2011-07-08 13 views
6

Hay una gran opción --patch que se puede utilizar con git add.¿Cómo combinar código y resolver conflictos más fácilmente usando git?

Al usar esta opción, puedo revisar fácilmente todos mis cambios y decidir qué trozos deben agregarse al área de preparación. Este proceso interactivo se puede realizar a través de todos los archivos modificados.

Estoy buscando algo similar para resolver conflictos. Después de rebase o merge, a menudo obtendrá una lista de archivos both modified.

¿Hay alguna orden que:

1) me ayudará a iterar a través de todos estos archivos both modified? Esto es muy molesto cuando tengo que copiar cada ruta al archivo para abrirlo manualmente.

2) ¿resolverá todos los conflictos automágicamente siempre usando HEAD/versión principal?

Respuesta

1

Después de años de búsqueda, ¡finalmente encontré la solución a mi problema! No es perfecto, y con seguridad esto no está resolviendo todos mis problemas, ¡pero definitivamente esto acelera mi trabajo!

Se llama git imerge (fusión incremental).

Al principio, esto es un poco abrumador y parece complicado, pero la idea detrás de la fusión incremental es muy simple.

Sin duda, debe echar un vistazo en git-imerge presentation from the GitMerge 2013 conference (20 min).

Si usted prefiere el texto leído, aquí es git-imerge: A Practical Introduction

2

Debería echarle un vistazo al git mergetool que debería ser de ayuda para resolver conflictos a través de la línea de comandos.

1

Pruebe p4merge. Puedes configurarlo fácilmente para que funcione con mergetool y elegir interactivamente qué versión prefieres.

+0

He aquí una guía de instalación rápida: https://gist.github.com/1510148 – neu242

Cuestiones relacionadas