Estoy usando (Windows) SourceTree para mi proyecto git. Puedo hacerlo en el símbolo del sistema o en la terminal de Linux.
Pero me pregunto si existe una buena manera de resolver conflictos de forma interactiva y visual. Por ejemplo, si pull detecta conflictos, aparece una herramienta de conflictos basada en GUI (por ejemplo, P4Merge). ¿Es posible?
Siempre estoy resolviendo conflictos manualmente, lo cual es simplemente doloroso.
Este es, por ejemplo, un pull
mensaje de git , de SourceTree.
git -c diff.mnemonicprefix=false -c core.quotepath=false pull --no-commit origin master
From W:\repo\
* branch master -> FETCH_HEAD
Updating 33c07bf..41e0249
error: Your local changes to the following files would be overwritten by merge:
foo.cpp
goo.cpp
goo.hpp
Please, commit your changes or stash them before you can merge.
Aborting
Completed with errors, see above.
Estoy usando SourceTree junto con TortoiseMerge / Diff, que es una herramienta de diferenciación / fusión muy fácil y conveniente.
Si también desea usarlo, entonces:
Obtenga la versión independiente de TortoiseMerge / Diff (bastante antigua, ya que no se envía de forma independiente desde la versión 1.6.7 de TortosieSVN, es decir, desde julio de 2011). Enlaces y detalles en esta respuesta .
Descomprimir
TortoiseIDiff.exe
yTortoiseMerge.exe
en cualquier carpeta (c:\Program Files (x86)\Atlassian\SourceTree\extras\
en mi caso).En SourceTree abierto
Tools > Options > Diff > External Diff / Merge
. SeleccioneTortoiseMerge
en ambas listas desplegables.Pulse
OK
y apunte SourceTree a su ubicación deTortoiseIDiff.exe
yTortoiseMerge.exe
.Después de eso, puede seleccionar
Resolve Conflicts > Launch External Merge Tool
del menú contextual en cada archivo en conflicto en su repositorio local. Esto abrirá TortoiseMerge, donde puede lidiar fácilmente con todos los conflictos que tenga. Una vez que haya terminado, simplemente cierre TortoiseMerge (ni siquiera necesita guardar los cambios, esto probablemente se hará automáticamente) y luego de unos segundos SourceTree debería manejar eso con gracia.El único problema es que crea automáticamente una copia de seguridad, aunque la opción adecuada no está marcada .
fuente
Cuando el menú Resolver conflictos-> Contenido está desactivado, uno puede estar en la lista de archivos pendientes. Necesitamos seleccionar la opción Archivos en conflicto del menú desplegable (arriba)
Espero eso ayude
fuente