Tôi muốn có thể gọi một số tiền xử lý trên các tệp trước khi Git cố gắng hợp nhất chúng và sau quá trình kết quả đã hợp nhất. Ý tưởng chung ở đây là một số tệp khó tự động hợp nhất, nhưng có thể được chuyển đổi thành một biểu mẫu dễ xử lý hơn. Đây là trường hợp sử dụng cụ thể của tôi:Làm cách nào để kết hợp tập tin git với trước và sau xử lý?
Tôi có kho lưu trữ dữ liệu không phải là rất nhạy cảm. Trong kho lưu trữ đó, tôi có một chút dữ liệu nhạy cảm được mã hóa, trong một tệp có tên là sensitive.pgp
. Tôi thích sự sắp xếp này bởi vì tôi không phải tin tưởng rằng kho lưu trữ của tôi đang được quản lý một cách an toàn, tôi chỉ phải tin vào mã hóa và mật khẩu. Việc nắm bắt tất nhiên là Git không thể hợp nhất văn bản được mã hóa, vì vậy nếu sensitive.pgp
được sửa đổi trong hai lần kiểm tra cùng một lúc, không có khả năng hợp nhất - ngay cả khi các thay đổi đối với văn bản rõ ràng có thể dễ dàng tách ra. Quy trình làm việc thủ công giống như sau:
- Xung đột hợp nhất cho
sensitive.pgp
được phát hiện. - Bắt đầu git-mergetool. Công cụ cũng không thể hợp nhất các tệp PGP.
- Bây giờ tôi có các tệp tạm thời cho phiên bản của mình, phiên bản cơ sở và phiên bản từ xa.
- Giải mã tất cả ba tệp.
- Gọi công cụ hợp nhất của tôi trên các phiên bản đã được giải mã.
- Mã hóa kết quả.
- git-thêm
sensitive.pgp
mới.
Tôi muốn yêu cầu Git áp dụng trước và sau xử lý của tôi trước khi nó cố hợp nhất để có thể xử lý tự động. Tôi có thể tưởng tượng rất nhiều kịch bản khác với cùng một mẫu chung: Khá nhiều lần bạn có định dạng tệp nén với cấu trúc cơ bản giống như văn bản (ví dụ: PDF, OpenOffice, Word) chẳng hạn.
Mọi đề xuất?
Điểm thưởng: Có cách nào để định cấu hình thao tác này chỉ được thực hiện trên các tệp hoặc loại tệp cụ thể, ngoài việc đặt logic đó vào trước và sau xử lý không? –