2011-06-19 25 views
7

Tôi muốn có kho lưu trữ git với nhánh để phát triển và nhánh để triển khai. Tôi có một số tập tin cấu hình và cơ sở dữ liệu mà dự án của tôi cần. Tôi muốn chi nhánh triển khai không có bất kỳ tệp cấu hình hoặc cơ sở dữ liệu nào cho dự án của tôi, nhưng tôi muốn giữ các phiên bản của các tệp đó trong nhánh phát triển của tôi để có thể kiểm tra. Có cách nào, khi sáp nhập chi nhánh phát triển vào chi nhánh triển khai, để có quá trình hợp nhất bỏ qua các tệp đó không?"chọn lọc" hợp nhất với git

Trả lời

6

Bạn có thể sử dụng git merge --no-commit và xóa tệp cấu hình trước khi cam kết hợp nhất. Tuy nhiên, có thể có nhiều khả năng hợp lý hơn.

Tuy nhiên, tôi khuyên bạn nên có các tệp trong cả hai nhánh hoặc không có chúng. Bạn đang sử dụng môi trường ngôn ngữ và phát triển nào? Họ có cung cấp một số khả năng để xác định các tập tin khác nhau tùy thuộc vào loại xây dựng bạn đang cố gắng thực hiện?

+0

tôi đã chạy vào kịch bản này với các dự án khác nhau, vì vậy tôi không có bất kỳ ngôn ngữ/xây dựng hệ thống trong tâm trí. Chỉ định các tệp khác nhau tùy thuộc vào việc tôi đang thử nghiệm hay triển khai các công trình chắc chắn; Tôi chỉ nghĩ rằng nó có thể là thanh lịch hơn để có git xử lý này. Có lẽ đó không phải là những gì git được thiết kế cho, mặc dù. – Rex

0

Bạn có thể thực hiện kết hợp giả. Điều này thực sự sẽ là một rebase của cam kết từ những gì chưa được sáp nhập. Vì vậy, nếu tại một số điểm bạn sáp nhập trước và bảo quản cách hai chi nhánh nhìn, bạn chỉ nên sáp nhập những gì khác biệt các cam kết được giới thiệu sau khi hợp nhất cuối cùng.

Dưới đây là câu trả lời mô tả này "đặc biệt hợp nhất":

Always ignore a certain commit on merge in git

Các vấn đề liên quan