Normalerweise benutze ich git in der Kommandozeile.
Aber wenn es einen Zusammenführungskonflikt gibt, benutze ich Vim, um sie zu lösen (persönlich mache ich das mit dem flüchtigen Plugin). Hinweis: Flüchtig ist gut für viele Git-Manipulationen in Vim. Mein Lieblingsfeature ist der 3-Wege-Unterschied eines Zusammenführungskonflikts.
git unterstützt dies in vimdiff über git mergetool. Ich habe fugitive installiert, aber Sie können es manuell einrichten (Dank an Jay Thompson).
Manuelle Einrichtung:
git config --global merge.tool vimdiff
git mergetool <file with conflicts>
Die Ausgabe unterscheidet sich geringfügig von der unten beschriebenen (ich habe dies nicht persönlich verwendet). Das Prinzip ist jedoch dasselbe, aber Sie haben unten ein viertes Fenster mit dem Ergebnis.
Mit Fugitive einrichten
vim-fugitive ist ein Git-Wrapper / Integrations-Plugin für Vim; Es kann viele Dinge bewirken, und die Lösung von Konflikten ist eine davon.
<Install the Fugitive Plugin>
vim <file with conflicts>
:Gdiff
- Ansicht 2 (links): Der Code, der sich in Ihrer Filiale befand.
- Ansicht 1 (Mitte): Der zusammengeführte Code (mit Konflikten)
- Ansicht 3 (rechts): Der Code, der mit Ihrem Code zusammengeführt wurde.
Sie können jetzt Text aus den beiden anderen Ansichten in die zentrale Ansicht ziehen und abrufen (die alle manuellen Korrekturen enthalten wird). Wenn Sie alle Konflikte manuell gelöst haben, beenden Sie einfach vimdiff
Sie können jedoch :diffget <view number>
und verwenden :diffput <view number>
, um Dinge zwischen Ansichten zu ziehen und zu verschieben. Ich persönlich finde das nicht sehr nützlich. Der gesamte Code befindet sich bereits in der mittleren Ansicht. Daher bearbeite ich diese Ansicht einfach gerne manuell, bis der Konflikt behoben ist. Es ist jedoch äußerst nützlich, beide Versionen des Codes auf beiden Seiten meines Editorfensters anzeigen zu können.
Auch eine sehr gute Demo seiner Verwendung hier