Tôi có một dự án đã được bắt đầu trong TFS, sau đó chuyển đến Git. Thật không may, anh chàng chuyển nó sang Git chỉ cần kiểm tra trong các tập tin hiện tại thay vì sử dụng git-tfs. Tôi đang cố gắng để rebase cam kết mới của mình trong Git trên đầu trang của các cam kết tôi kéo từ TFS bằng cách sử dụng git-tfs.Tại sao git hiển thị xung đột giữa hai tệp được thêm giống hệt nhau?
Để làm điều này, tôi chỉ đơn giản là rebasing cam kết của mình trên đầu trang của các cam kết git-tfs. (Tôi nhận ra điều này sẽ làm hỏng các chi nhánh Git từ xa, nhưng chúng tôi là một nhóm nhỏ và nó sẽ ổn thôi. Tôi cũng đã thử chọn lựa anh đào nhưng tôi cũng gặp vấn đề tương tự.)
Vấn đề tôi ' đang chạy vào là một tập hợp của những xung đột mà trông như thế này:
<<<<<<< HEAD
namespace OurNiftyProject
{
public enum CardType
{
Visa = 0,
MasterCard = 1
}
}
||||||| merged common ancestors
=======
namespace OurNiftyProject
{
public enum CardType
{
Visa = 0,
MasterCard = 1
}
}
>>>>>>> Add a bunch of stuff.
dường như đây là một cuộc xung đột giữa một cam kết từ phía TFS rằng thêm những tập tin này, và cam kết ở phía bên Git đó thêm họ (khi repo của Git bắt đầu trống rỗng).
Điều hợp lý sẽ là bỏ qua cam kết này, có lẽ, nhưng có một vài tệp trong đó (nói mười trong số vài trăm) là mới. Những người không gây ra xung đột, tất nhiên.
Tại sao Git không thể tự phát hiện ra rằng hai tệp giống hệt nhau? Ngay cả khi tôi sử dụng --ignore-whitespace
khi tôi rebase, Git vẫn cho thấy hàng chục tập tin như thế này mà xuất hiện để được giống hệt nhau. Tôi đang thua lỗ để giải quyết vấn đề này.
'diff' có cung cấp cho bạn sự khác biệt không? – Reactormonk
Nó có thể là sự khác biệt kết thúc dòng? – ebneter
Trailing whitespaces có lẽ –