Frage

Ist es möglich, Git einzurichten, so dass ich die Drei-Wege in KDiff3 vergleichen kann?

ich zwei Zweige, die auf Auto-kombinierte sie viel zu unterschiedlich sind, muß ich einfach jeden merge Punkt überprüfen, und ich denke, der beste Weg, um den Zweig zu überprüfen, würde ich die Änderungen von dem anderen Zweig will und sagen

git difftool HEAD_OF_OTHER_BRANCH -- .

und wählen Sie dann Merge Datei in KDiff3. Nachdem durch die Dateien gegangen würde ich nur begehen.

Ich habe merge.conflictstyle und diff.conflictstyle zu diff3 eingerichtet, aber KDiff3 beginnt noch mit einem Zwei-Wege-diff. Ist das möglich? Ich denke, wenn Git sendet auch den Hash des gemeinsamen Vorfahren als Parameter, das ist möglich, aber nicht wahr?

Es gibt Diskussion darüber, wie dies zu tun mit SVN und BC3, aber ich kann nichts für Git und KDiff3 finden.

War es hilfreich?

Lösung

Es scheint, dass git diff nur einen 2-Wege-diff tun (was Sinn machen zu erzeugen Patch usw.), außer in einem verschmelzenden Zustand, haben Sie, dass eine Zusammenführung zu tun. Ich war in einer ähnlichen Situation der andere Tag und ich endete mergin mit der ours Strategie auf. Das funktionierte aber nicht ideal war. Vielleicht brauchen wir eine ‚nonresolve‘ verschmelzenden Strategie, die nicht versucht, Konflikte zu lösen. Sie könnten in der Lage sein, das zu emulieren, indem sie die .git / MERGE_ * Dateien zwicken und stellen Sie alle Dateien, die als Konflikt.
Ansonsten ist die offensichtliche Lösung ist 3 verschiedene Verzeichnis und führen kdiff3 zur Kasse, aber ich denke, Sie für eine elegantere Lösung suchen

Andere Tipps

Führen Sie diese in der Befehlszeile:

git config --global mergetool.kdiff3.path /path/for/your/kdiff3/binary  

Dann, wenn Konflikte lösen Sie gerade tun müssen:

git mergetool --tool=kdiff3
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top