Skip to main content
  1. Learn
  2. Software Development
  3. Guides
  4. Git tutorial
  5. Verwenden von Git
  6. Verwenden von Git per Befehlszeile
  7. Auflösen eines Konflikts
GuidesSoftware DevelopmentBacklog
Git

Project and code management together.

Auflösen eines Konflikts

Um die soeben vorgenommene Änderung in das Remoterepository zu verschieben, müssen wir den Konflikt manuell auflösen. Zu diesem Zweck führen wir einen Pull-Vorgang durch, um den neuesten Änderungssatz aus dem Remoterepository zu erhalten.

Führen Sie den folgenden git pull-Befehl aus.

$ git pull origin main
  Username:
  Password:
  remote: Counting objects: 5, done.
  remote: Compressing objects: 100% (2/2), done.
  remote: Total 3 (delta 0), reused 0 (delta 0)
  Unpacking objects: 100% (3/3), done.
  From https://example.backlog.com/git/BLGGIT/tutorial.git
  * branch            main     -> FETCH_HEAD
  Auto-merging sample.txt
  CONFLICT (content): Merge conflict in sample.txt
  Automatic merge failed; fix conflicts and then commit the result.

Es wird eine Meldung angezeigt, die vor einem Merge-Konflikt warnt.

Wenn Sie die Datei sample.txt öffnen, sehen Sie von Git hinzugefügte Markierungen, die auf Konflikte in diesem Dateiabschnitt hinweisen, wie unten dargestellt.

Anyone can learn Git with this tutorial and Backlog
add: Register a change in an index
<<<<<<< HEAD
commit: Save the status of an index
=======
pull: Obtain the content of the remote repository
>>>>>>> 17c860612953c0f9d88f313c8dfbf7d858e02e91

Wir werden den Konflikt auflösen, indem wir beide Änderungen akzeptieren und die Markierung entfernen.

Anyone can learn Git with this tutorial and Backlog
add: Register a change in an index
commit: Save the status of an index
pull: Obtain the content of the remote repository

Sobald wir den Konflikt gelöst haben und sich der Inhalt der Datei geändert hat, übertragen wir die Änderungen per Commit.

$ git add sample.txt
$ git commit -m "merge"
  [main d845b81] merge

Wir verfügen jetzt über die neuesten Änderungen aus dem Remoterepository.

Wir können die Genauigkeit des Repositoryverlaufs mit dem Befehl git log überprüfen. Die Option --graph zeigt den Branch-Verlauf in einem grafischen Format an, und die Option --online versucht, die Ausgabemeldung kompakt auszugeben.

$ git log --graph --oneline
  *   d845b81 merge
  |\
  | * 4c01823 append description of the pull command
  * | 95f15c9 append description of the commit command
  |/
  * 3da09c1 append description of the add command
  * ac56e47 first commit

Dies zeigt an, dass die beiden Verläufe erfolgreich mit dem neuen Merge-Commit zusammengeführt wurden. Wir können diese Änderung nun sicher und ohne Merge-Konflikte in das Remoterepository übertragen.

Subscribe to our newsletter

Learn with Nulab to bring your best ideas to life