Pregunta

¿Es posible configurar Git para que yo puedo usar el de tres vías comparar en KDiff3?

Tengo dos ramas que son demasiado diferente a ellos auto-fusión, simplemente tendrá que comprobar cada punto de fusión y creo que la mejor forma sería la de revisar la rama Quiero que los cambios con respecto a la otra rama y decir

git difftool HEAD_OF_OTHER_BRANCH -- .

Y a continuación, seleccione Archivo Combinar en KDiff3. Después de haber pasado por los archivos que acababa de cometer.

Me han establecido merge.conflictstyle y diff.conflictstyle a diff3 pero todavía KDiff3 comienza con un diff de dos vías. es posible? Creo que si Git también envía el hash del ancestro común como un parámetro, esto es posible, pero lo hace?

sobre cómo hacer esto con SVN y BC3, pero no pude encontrar nada de Git y KDiff3.

¿Fue útil?

Solución

Parece que git diff hacer solamente un diff de 2 vías (que tiene sentido para generar parches, etc) excepto en un estado de fusión, que tiene que hacer una combinación de eso. Yo estaba en una situación similar, el otro día y terminé mergin utilizando la estrategia ours. Eso funcionó pero no era ideal. Tal vez necesitamos una estrategia de fusión 'nonresolve', que no trata de resolver cualquier conflicto. Usted puede ser capaz de emular que mediante la deformación de los / MERGE_ archivos * .git y establecer todos los archivos como en conflicto.
De lo contrario, la solución obvia es a la caja de 3 directorio diferente y kdiff3 correr, pero supongo que busca una solución más elegante

Otros consejos

ejecutar esto en la línea de comandos:

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

A continuación, en la resolución de conflictos sólo hay que hacer:

git mergetool --tool=kdiff3
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top