Fusion de texte
Une fusion de texte combine les modifications de deux versions d’un fichier en un seul résultat modifiable. Un conflit se produit lorsque deux modifications sont incompatibles et qu’une décision est nécessaire.
Disposition

Cet écran montre trois versions du même fichier.
- Volet gauche : votre version — modifications locales.
- Volet central : Résultat — c’est le seul volet modifiable.
- Volet droit : la version entrante — modifications distantes.
Base
Il existe aussi une quatrième version : la Base, c’est-à-dire la version d’origine à partir de laquelle les deux côtés ont commencé. Cela correspond au modèle de fusion à trois voies de Git :
Local → Base ← Remote
↓
Result
Dans ABDiff, le volet central peut basculer entre Résultat et Base pour vous aider à comprendre ce qui a changé.

Conflit
Un conflit se produit lorsque les deux côtés modifient les mêmes lignes de façon différente. Par exemple, la valeur d’origine était « blue », mais maintenant un côté dit « green » et l’autre « red ». Git ne peut pas déterminer quelle modification est correcte, il faut donc la résoudre manuellement.
Cela arrive lorsque deux personnes modifient les mêmes lignes en même temps. Si les changements ne se chevauchent pas, Git les fusionne automatiquement. S’ils se chevauchent, vous devez résoudre le conflit manuellement.
Si vous avez configuré Git, ABDiff se lance lorsque Git détecte un conflit. La zone de résultat reste non résolue, et c’est à vous d’en définir le contenu. Vous avez trois possibilités :
- Résoudre avec la version locale
- Résoudre avec la version entrante
- Ou écrire votre propre résultat
Résoudre un conflit
Pour accepter un résultat, faites un clic droit sur un bloc de conflit et choisissez Résoudre avec la nôtre ou Résoudre avec la leur.
Pour créer votre propre résultat :
- Modifiez la ligne sélectionnée (appuyez sur ↩︎ ou double-cliquez)
- Ou copiez des lignes depuis l’un ou l’autre côté (clic droit ▸ Copier la sélection dans le résultat)
Conseils :
- Étendez la sélection (⇧↑ / ⇧↓) pour copier plusieurs lignes à la fois
- Utilisez ⌘Z pour annuler toute modification
Terminer
Lorsque vous avez terminé, enregistrez le fichier (Fichier ▸ Enregistrer ou ⌘S). Cela indique à Git que le conflit est résolu.
Ou, si vous ne voulez pas résoudre le conflit, fermez simplement le fichier sans l’enregistrer.
Édition et navigation
Navigation
| Action | Raccourci |
|---|---|
| Ligne précédente / suivante | ↑ / ↓ |
| Volet précédent / suivant | ← / → |
| Aller à la première / dernière ligne | ⌘↑ / ⌘↓ |
| Changement précédent / changement suivant | ⌥↑ / ⌥↓ |
| Hunk précédent / suivant | ⌥↑ / ⌥↓ |
| Passer à un autre volet | ⇥ |
Copier
| Action | Raccourci |
|---|---|
| Copier vers la droite | ⌘→ |
| Copier vers la gauche | ⌘← |
| Étendre la sélection | ⇧↑ / ⇧↓ |
| Résoudre avec la nôtre | ⇧⌘→ |
| Résoudre avec la leur | ⇧⌘← |
Une ligne sélectionnée est affichée avec un rectangle gris. Un hunk est un bloc contigu de conflit/modification. Les actions de copie ne sont activées que lorsqu’elles modifieraient le volet Résultat et lorsque la sélection se trouve sur une vraie ligne. Un Maj-clic sur une ligne étend aussi la sélection actuelle dans le même volet.
Pour copier les modifications :
- Utilisez la commande de copie pour copier les lignes actuellement sélectionnées.
- Utilisez l’action de copie du hunk entier pour copier le bloc contenant la ligne sélectionnée.
- Un clic droit dans la sélection actuelle conserve la sélection ; un clic droit ailleurs sélectionne d’abord cette ligne.
- Le menu contextuel de ligne propose aussi Étendre la sélection vers le haut / Étendre la sélection vers le bas lorsque ces déplacements Shift+Flèche sont disponibles.
- Utilisez Résoudre avec la nôtre ou Résoudre avec la leur sur la ligne sélectionnée, soit avec un clic droit sur une ligne, soit depuis le menu Modifier.
Toutes les actions de copie peuvent être annulées avec ⌘Z.
Édition
| Action | Raccourci |
|---|---|
| Commencer à modifier la ligne sélectionnée de Résultat | Return |
| Commencer à modifier directement une ligne de Résultat | Double-cliquez sur la ligne |
| Valider et passer à la ligne modifiable suivante | Return (pendant l’édition) |
| Valider et quitter le mode d’édition | Command-Return |
| Annuler le tampon de ligne actuel et quitter le mode d’édition | Esc ou Command-. |
L’édition peut aussi être lancée par un double-clic sur une ligne. Toutes les actions d’édition peuvent être annulées avec ⌘Z.
Options d’affichage
La fusion de texte propose des options qui modifient la manière dont la comparaison est calculée ou affichée. Ces options sont disponibles dans le menu des options.
- Motifs d’exclusion réduisent les différences parasites. Voir Motifs d’exclusion.
- Normalisation JSON compare la structure JSON canonique au lieu du formatage brut.
- La séparation sémantique des lignes est configurée par défaut dans Paramètres, pas dans ce menu d’options.
Ces paramètres affectent la correspondance et la visualisation ; ils ne modifient pas directement les fichiers.