Khởi động lại / hoàn tác giải quyết xung đột trong một tệp duy nhất


189

Trong một hợp nhất git lớn hơn với một số tệp xung đột, tôi đã đánh dấu không chính xác một tệp là đã giải quyết (sử dụng git add FILEsau khi chỉnh sửa)

Bây giờ tôi muốn hoàn tác nỗ lực giải quyết xung đột của mình và bắt đầu giải quyết tệp đó.

Làm thế nào tôi có thể làm điều đó?


Câu trả lời:


334

Tìm thấy giải pháp tại đây: http://gitster.livejournal.com/43665.html

git checkout -m FILE

Điều này khôi phục trạng thái chưa được giải quyết, bao gồm tất cả thông tin về cha mẹ và cơ sở hợp nhất, cho phép khởi động lại độ phân giải.


3
+1; đây là giải pháp thực tế :) git resetsẽ không chạm vào tập tin.
chọc

4
Không hoạt động với tôi, tệp vẫn được đánh dấu both modified(trong trạng thái xung đột)
Gaui

Điều này thực sự giúp ích cho tôi vì nó đưa tập tin trở lại trạng thái giải quyết trước xung đột. Điều thú vị là thay vì hai điểm hợp nhất được đặt tên là "đầu" và {REVISION}, giờ đây chúng được gọi là "của chúng ta" và "của chúng".
TGP1994

26
"Tập tin vẫn được đánh dấu bằng both modified". Đó chính xác là kết quả dự định của câu hỏi.
Kevin Smyth

2
-mnhư trong--merge
kontur

0
git reset HEAD FILE

Thí dụ

$ git status
# On branch master
# Changes to be committed:
#   (use "git reset HEAD <file>..." to unstage)

6
Khi tôi làm điều này và chạy git statussau đó, FILEsẽ hiển thị bên dưới "Thay đổi không được tổ chức cho cam kết". Tuy nhiên, tôi hy vọng nó sẽ hiển thị dưới "Đường dẫn không được trộn", để IDE của tôi sẽ chọn nó để hợp nhất lại ...
Alex Krauss
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.