Merge-Konflikte

Git für Fortgeschrittene

George Boorman

Curriculum Manager, DataCamp

Konflikte

  • Konflikt

    • Probleme beim Auflösen von Unterschieden im Inhalt einer oder mehrerer Dateien zwischen Branches
  • Bearbeitung derselben Datei in zwei Branches

  • Merge-Versuch

  • Git weiß nicht, welche Version es behalten soll

  • Konflikt!

Git für Fortgeschrittene

In Konflikt stehende Versionen von README.md

documentation Branch

# Contents and usage

This repo contains source code 
for the DataCamp website.

It also contains source code for an 
AI-Assistant (recommendation system) 
that takes prompts from learners and 
returns suggested content
that they might be interested in. 

It is for internal use only, 
external access is prohibited.

main Branch

# Contents and usage

This repo contains source code 
for the DataCamp website.

It is for internal use only, 
external access is prohibited.
Git für Fortgeschrittene

Mergen

  • Aus dem main-Branch heraus
git merge documentation
Auto-merging README.md
CONFLICT (add/add): Merge conflict in README.md
Automatic merge failed; fix conflicts and then commit the result.
Git für Fortgeschrittene

Datei öffnen

nano README.md

README file showing conflict sections using nano

Git für Fortgeschrittene

Syntax von Git-Konflikten

annotierte Konfliktdatei mit Inhalten im Hauptzweig versus im Dokumentationszweig

Git für Fortgeschrittene

Einen Konflikt auflösen

nano-Webeditor löscht die Git-Syntax <<<<<<< documentation, ======= und >>>>>>> HEAD

  • Speichern: Ctrl + O (nicht Ctrl + 0), dann Enter
  • Beenden: Ctrl + X
Git für Fortgeschrittene

Branches mergen

  • Mergen nachdem der Konflikt behoben ist
git add README.md
git commit -m "Resolving README.md conflict"
git merge documentation
Already up to date.
  • Vorbeugen ist besser als heilen!
Git für Fortgeschrittene

Lass uns üben!

Git für Fortgeschrittene

Preparing Video For Download...