HOWTO · Git
Verstehen Sie die Git-Konfliktmarkierungen
In diesem Artikel werden wir Git-Merge-Konfliktmarker diskutieren.
In diesem Artikel werden wir Git-Konfliktmarker diskutieren.
Verstehen Sie die Git-Konfliktmarkierungen
Beim Abrufen von Änderungen aus dem Remote-Repository können Zusammenführungskonflikte auftreten. Die Zusammenführungskonfliktdatei kann manchmal verwirrend sein.
Eine typische Merge-Konfliktdatei sieht so aus:
<<<<<<< HEAD: file.txt
foo
=======
bar
>>>>>>> cb1abc6bd98cfc84317f8aa95a7662815417802d:file.txt
Lassen Sie uns die Elemente im obigen Zaun besprechen.
<<<<<<< HEAD:file.txt
foo
=======
Der obige Teil zeigt die Datei in Ihrem lokalen Repository. Der HEAD zeigt auf unseren Branch oder Commit.
=======
bar
>>>>>>> cb1abc6bd98cfc84317f8aa95a7662815417802d:file.txt
Der obige Teil zeigt die Änderungen, die Sie aus dem Remote-Repository vorgenommen haben. Das cb1abc6bd98cfc84317f8aa95a7662815417802d ist der hash oder die SHA1-Summe des Commit, das aus dem Remote-Repository zusammengeführt wird.
Das bedeutet, dass beim Ausführen eines git pull-Befehls, der im Grunde eine Kombination aus git fetch und git merge ist, die obere Hälfte die lokalen Änderungen anzeigt. Im Gegensatz dazu stellt die untere Hälfte die Remote-Änderungen dar, die vom Remote-Repository in das lokale Repository eingeführt werden.
Beim Ausführen des Befehls git rebase origin/master stellt der obere Teil die Upstream-Änderungen dar, während die untere Hälfte die lokalen Änderungen anzeigt, die zusammengeführt werden.
Sie müssen diese Teile manuell bearbeiten und die Ergebnisse dann festschreiben.