Merge de texto
Un merge de texto combina los cambios de dos versiones de un archivo en un único resultado editable. Se produce un conflicto cuando dos cambios son incompatibles y hace falta tomar una decisión.
Diseño

Esta pantalla muestra tres versiones del mismo archivo.
- Panel izquierdo es tu versión — cambios locales.
- Panel central es Resultado — es el único panel editable.
- Panel derecho es la versión entrante — cambios remotos.
Base
También hay una cuarta versión: la Base, que es la versión original de la que partieron ambos lados. Esto coincide con el modelo de merge de tres vías de Git:
Local → Base ← Remote
↓
Result
En ABDiff, el panel central puede alternar entre Resultado y Base para ayudarte a entender qué cambió.

Conflicto
Un conflicto ocurre cuando ambos lados modifican las mismas líneas de forma distinta. Por ejemplo, el valor original era “blue”, pero ahora un lado dice “green” y el otro “red”. Git no puede determinar qué cambio es correcto, así que requiere una resolución manual.
Esto ocurre cuando dos personas editan las mismas líneas al mismo tiempo. Si los cambios no se solapan, Git los combina automáticamente. Si se solapan, tienes que resolver el conflicto manualmente.
Si configuraste Git, ABDiff se abrirá cuando Git encuentre un conflicto. El área de resultado queda sin resolver, y tu tarea es definir su contenido. Tienes tres opciones:
- Resolver usando la versión local
- Resolver usando la versión entrante
- O escribir tu propio resultado
Resolver un conflicto
Para aceptar un resultado, haz clic derecho en un bloque de conflicto y elige Resolver con nuestra versión o Resolver con su versión.
Para crear tu propio resultado:
- Edita la línea seleccionada (pulsa ↩︎ o haz doble clic)
- O copia líneas desde cualquiera de los dos lados (clic derecho ▸ Copiar selección al resultado)
Consejos:
- Amplía la selección (⇧↑ / ⇧↓) para copiar varias líneas a la vez
- Usa ⌘Z para deshacer cualquier cambio
Finalizar
Cuando termines, guarda el archivo (Archivo ▸ Guardar o ⌘S). Esto le indica a Git que el conflicto se ha resuelto.
O, si no quieres resolver el conflicto, simplemente cierra el archivo sin guardar.
Edición y navegación
Navegación
| Acción | Atajo |
|---|---|
| Fila anterior/siguiente | ↑ / ↓ |
| Panel anterior/siguiente | ← / → |
| Saltar a la primera/última fila | ⌘ ↑ / ⌘↓ |
| Cambio anterior/próximo cambio | ⌥ ↑ / ⌥↓ |
| Bloque anterior/siguiente | ⌥ ↑ / ⌥↓ |
| Cambiar a otro panel | ⇥ |
Copiar
| Acción | Atajo |
|---|---|
| Copiar a la derecha | ⌘→ |
| Copiar a la izquierda | ⌘← |
| Ampliar selección | ⇧ ↑ / ⇧↓ |
| Resolver con nuestra versión | ⇧⌘→ |
| Resolver con su versión | ⇧⌘← |
Una línea seleccionada se muestra con un rectángulo gris. Un bloque es un bloque contiguo de conflicto/cambio. Las acciones de copia solo se habilitan cuando modificarían el panel Resultado y cuando la selección está sobre una línea real. Hacer clic con Mayúsculas sobre una fila también amplía la selección actual dentro del mismo panel.
Para copiar cambios:
- Usa el comando de copiar para copiar las líneas seleccionadas actualmente.
- Usa la acción de copiar bloque completo para copiar el bloque donde está la línea seleccionada.
- Si haces clic derecho dentro de la selección actual, la selección se mantiene; si lo haces en otra parte, primero se selecciona esa fila.
- El menú contextual de la fila también ofrece Ampliar selección hacia arriba / Ampliar selección hacia abajo cuando esos movimientos con Mayúsculas+Flecha están disponibles.
- Usa Resolver con nuestra versión o Resolver con su versión en la línea seleccionada, ya sea haciendo clic derecho en una línea o desde el menú Editar.
Todas las acciones de copia se pueden deshacer con ⌘Z.
Edición
| Acción | Atajo |
|---|---|
| Empezar a editar la fila seleccionada de Resultado | Return |
| Empezar a editar directamente una fila de Resultado | Haz doble clic en la fila |
| Confirmar y pasar a la siguiente fila editable | Return (mientras editas) |
| Confirmar y salir del modo de edición | Command-Return |
| Cancelar el búfer actual de la fila y salir del modo de edición | Esc o Command-. |
La edición también se puede iniciar haciendo doble clic con el mouse en una fila. Todas las acciones de edición se pueden deshacer con ⌘Z.
Opciones de visualización
El merge de texto expone opciones que cambian la forma en que se calcula o muestra la comparación. Estas opciones están disponibles en el menú de opciones.
- Ignorar patrones reduce las diferencias ruidosas. Consulta Ignorar patrones.
- Normalización JSON compara la estructura JSON canónica en lugar del formato sin formato.
- La división semántica de líneas se configura de forma predeterminada en Configuración, no en este menú de opciones.
Estas configuraciones afectan la coincidencia y la visualización; no editan archivos directamente.