git rerere

Patchs et réécriture

Réutiliser des résolutions de conflit enregistrées


La fonction 'git rerere' (reuse recorded resolution) retient comment vous avez résolu un conflit et réapplique automatiquement la même résolution la prochaine fois que ce conflit identique apparaît — quand vous refaites un rebase, refusionnez une branche ou refaites une fusion. Activez-la avec rerere.enabled ; git enregistre alors conflits et résolutions tout seul. Vous vérifiez toujours le résultat et faites git add.

Synopsis

git rerere [clear | forget <path> | diff | status | remaining | gc]
[ ] facultatif| ou<arg> valeur à remplacer... répétable--flag option

Exemples

L’activer

git config --global rerere.enabled true

Désormais, conflits et résolutions sont retenus.


Conflits en cours d’enregistrement

git rerere status

Fichiers dont le conflit est enregistré.


Oublier une mauvaise résolution

git rerere forget app.js

L’enregistrer à nouveau la prochaine fois.

Exemples de workflows

1
git config rerere.enabled true

Une fois

2
git merge main … resolve … git reset --hard HEAD~1

Les fusions d’essai instruisent rerere

3
git merge main

La vraie fusion réutilise vos réponses

Dépannage

Un conflit a été mal résolu

Cause : Une mauvaise résolution a été enregistrée

git rerere forget <file>, résolvez à nouveau, committez

Astuces et pièges

Bonnes pratiques

  • ✓Activez-le en global si vous faites souvent des rebases.
  • ✓Relisez toujours les fichiers résolus par rerere avant git add.

Erreurs fréquentes

  • ✗Enregistrer une mauvaise résolution qui est réappliquée en silence — vérifiez les fichiers après les fusions et utilisez rerere forget.

FAQ

A:

Pas par défaut : réglez rerere.autoUpdate à true pour préparer automatiquement les fichiers résolus.