Ich habe ein Arbeitsverzeichnis (Nr. 1), in dem sich das Herstellerverzeichnis (Nr. 2) befindet. Es gibt eine Abhängigkeit, die ich ohne Composer manuell ziehen wollte (PHP-Version von npm / gem). Ich habe in # 1 gearbeitet, keine Änderungen gespeichert / festgeschrieben, als ich beschlossen habe, die Bibliothek in # 2 zu aktualisieren. Ich habe zu Vendor / Myname navigiert und das Git Pull Repository erstellt.
Leider begann es zu ziehen und zu # 1 zusammenzuführen, anstatt ein neues Verzeichnis im Herstellerordner zu erstellen.
Jetzt habe ich:
- # 1 Ordner mit meinen Änderungen
- # 1 Ordner mit Dateien, die ich nicht aus einem falschen Repository haben möchte
- # 1 Zusammenführungskonflikte wie composer.json, Readme.md ... (allgemeine Dateien)
Ich möchte diesen letzten Git-Pull "rückgängig machen", ohne die Änderungen zu verlieren, die ich an Ordner 1 vorgenommen habe. Wie kann ich das machen?
Antworten:
git merge --abort
könnte das sein, wonach Sie suchen.quelle
git status
Bestätigung.-Modern Git:
Älter:
Old-School (Warnung: Alle lokalen Änderungen werden verworfen):
Aber eigentlich ist es wert , zu bemerken , dass
git merge --abort
nur äquivalent istgit reset --merge
daMERGE_HEAD
vorhanden ist. Dies kann in der Git-Hilfe zum Zusammenführen gelesen werden.Nach einer fehlgeschlagenen Zusammenführung kann
MERGE_HEAD
die fehlgeschlagene Zusammenführung rückgängig gemacht werden,git reset --merge
jedoch nicht unbedingt mitgit merge --abort
. Daher handelt es sich nicht nur um alte und neue Syntax für dieselbe Sache . Persönlich finde ichgit reset --merge
viel nützlicher in der täglichen Arbeit.quelle
Mit Git 2.10 (Q3 2016) wissen Sie, was zu tun ist, da Sie
git status
diegit merge --abort
Option vorschlagen werden .Siehe Commit b0a61ab (21. Juli 2016) von Matthieu Moy (
moy
) .(Zusammengeführt von Junio C Hamano -
gitster
- in Commit 5a2f4d3 , 03. August 2016)quelle