Uno de los miedos a la hora de utilizar git es hacer merges. Eso de crear una nueva rama y después fusionarla… da a veces un poco de miedo. Sobre todo porque a veces hay conflictos entre archivos y tenemos que usar herramientas para poder compararlos.
No solo cuando usamos git necesitamos comparar archivos, hay muchas razones por las que comparar un archivo y ver los cambios, desde ese Excel lleno de columnas a ese backup de la base de datos. En este artículo voy a recopilar una serie de herramientas open source y/o gratuitas para hacer comparaciones de archivos e Windows.
Notepad++
Sí, Notepad plus plus es esa herramienta tan versátil que todos tenemos instalada en Windows, pues en su sección de plugins hay uno la mar de interesante llamado “Compare Plugin”se puede descargar de aquí http://sourceforge.net/apps/mediawiki/notepad-plus/index.php?title=Plugin_Central y para instalarlo solo hay que copiar un archivo .dll a la carpeta plugins.

Ahora solo con pulsar Alt + d podemos ver las diferencias entre 2 archivos abiertos.
winMerge
WinMerge es una herramienta que nos permitirá comparar tanto carpetas como archivos, presentando las diferencias en forma de texto visual. Por lo que será fácil de entender y manejar.

La podemos descargar aquí: http://winmerge.org/
KDiff3
Permite comparar dos o tres ficheros a la vez y quedarte con los cambios que más te interesen. Después de pasear por stackoverflow y similares buscando herramientas para fusionar y comparar, Kdiff3 aparece muchísimas veces, así que no será tan mala 😉

Windiff
Sí, Windows trae una herramienta para comparar archivos solo hay que ejecutar Windiff.exe Aunque tiene una UX Windows 3.11, pude servirnos en un momento de necesidad
[Bola extra]
Hace ya algunos meses los chicos de códice software, creadores de PlasticSCM (http://www.plasticscm.com/) sacaron una herramienta con muy buena pinta
Semantic Merge
Semantic merge trata de analizar el código para obtener la estructura del mismo y luego fusionarse. Como una imagen vale más que mil palabras aquí os dejo una imagen de lo que soluciona SemanticMerge, puedes refactorizar y mover métodos de sitio sin tener miedo a que la fusión se convierta en una locura.

Para sintetizar, Semantic Merge permite analizar los cambios no a nivel de líneas, sino a un nivel más abstracto, viendo diferencias entre métodos, clases, propiedades o campos en un mismo fichero.
De momento solo está disponible para mergear C# y para Java, pero la herramienta promete 😉







Replica a Nicolas ss Cancelar la respuesta