Giả sử tôi merge
git và có một xung đột hợp nhất.
Câu hỏi của tôi là: làm cách nào để buộc git luôn chọn phiên bản mã mới hơn trong xung đột để tôi không cần phải giải quyết xung đột bằng tay?
Giả sử tôi merge
git và có một xung đột hợp nhất.
Câu hỏi của tôi là: làm cách nào để buộc git luôn chọn phiên bản mã mới hơn trong xung đột để tôi không cần phải giải quyết xung đột bằng tay?
Câu trả lời:
Nó không chính xác là phiên bản "mới hơn", nhưng bạn có thể nói git luôn thích phiên bản trên nhánh hiện tại đang sử dụng git merge branch -X ours
hoặc thích phiên bản của nhánh đang được hợp nhất git merge branch -X theirs
.
Từ man git-merge
:
của chúng tôi:
Tùy chọn này buộc các nhóm xung đột phải được tự động giải quyết rõ ràng bằng cách ưu tiên phiên bản của chúng tôi. Những thay đổi từ cây khác không xung đột với phía chúng tôi được phản ánh vào kết quả hợp nhất. Đối với tệp nhị phân, toàn bộ nội dung được lấy từ phía chúng tôi.
của họ:
Điều này đối lập với "của chúng ta".
ours
- theirs
!! Chỉ cần nói nó và bạn hiểu những gì lệnh làm! Tôi yêu Git! : D
git merge branch
, bạn sẽ cần git merge --abort
trước khi có thể thực hiện việc này.
error: The following untracked working tree files would be overwritten by merge:
Tôi thậm chí không biết tại sao những tệp này lại nằm trong nhánh này ngay từ đầu, nhưng chúng nên được ghi đè, và git từ chối.
git add
) chúng. Đọc một chút về git clean
, nó có thể giúp bạn điều đó.
git merge ours
, nếu có một số tệp xung đột, sẽ có bất kỳ bản ghi nào? và tôi có thể theo dõi git merge ours
?
Tôi sử dụng cái này,
git fetch --prune
git reset --hard origin/master