Starten Sie die Konfliktlösung in einer einzelnen Datei neu / machen Sie sie rückgängig


189

Bei einer größeren Git-Zusammenführung mit mehreren widersprüchlichen Dateien habe ich eine Datei fälschlicherweise als aufgelöst markiert ( git add FILEnach einiger Bearbeitung).

Jetzt möchte ich meinen Konfliktlösungsversuch rückgängig machen und mit der Auflösung dieser Datei beginnen.

Wie kann ich das machen?


Antworten:


334

Die Lösung finden Sie hier: http://gitster.livejournal.com/43665.html

git checkout -m FILE

Dadurch wird der nicht aufgelöste Status wiederhergestellt, einschließlich aller Informationen zu übergeordneter und Zusammenführungsbasis, wodurch die Auflösung neu gestartet werden kann.


3
+1; Dies ist die eigentliche Lösung :) git resetBerührt die Datei nicht.
stupsen

4
Hat bei mir nicht funktioniert, Datei ist immer noch markiert mit both modified(im Konfliktzustand)
Gaui

Dies hat mir sehr geholfen, da die Datei wieder in den Zustand vor der Konfliktlösung versetzt wurde. Interessant ist, dass die beiden Zusammenführungspunkte, die als "head" und {REVISION} bezeichnet werden, jetzt als "unsere" und "ihre" bezeichnet werden.
TGP1994

26
"Datei ist noch mit markiert both modified". Das ist genau das beabsichtigte Ergebnis der Frage.
Kevin Smyth

2
-mwie in--merge
kontur

0
git reset HEAD FILE

Beispiel

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

6
Wenn ich dies tue und git statusdanach starte, FILEwird es unter "Änderungen, die nicht für das Festschreiben bereitgestellt wurden" angezeigt. Ich würde jedoch erwarten, dass es unter "Nicht zusammengeführte Pfade" angezeigt wird, damit meine IDE es zum erneuten Zusammenführen aufnimmt ...
Alex Krauss
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.