git rerere

Parches y reescritura

Reutiliza resoluciones de conflictos registradas


La función 'git rerere' (reuse recorded resolution) recuerda cómo resolviste un conflicto y aplica automáticamente la misma resolución la próxima vez que aparece ese conflicto idéntico — al volver a hacer rebase, refusionar una rama o repetir una fusión. Actívala con rerere.enabled; git registra entonces conflictos y resoluciones por su cuenta. Tú sigues revisando el resultado y haciendo git add.

Sinopsis

git rerere [clear | forget <path> | diff | status | remaining | gc]
[ ] opcional| o<arg> valor a sustituir... repetible--flag opción

Ejemplos

Activarlo

git config --global rerere.enabled true

A partir de ahora se recuerdan conflictos y resoluciones.


Conflictos en registro

git rerere status

Archivos cuyo conflicto se está registrando.


Olvidar una mala resolución

git rerere forget app.js

Registrarla de nuevo la próxima vez.

Ejemplos de flujos de trabajo

1
git config rerere.enabled true

Una vez

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

Las fusiones de prueba enseñan a rerere

3
git merge main

La fusión real reutiliza tus respuestas

Solución de problemas

Un conflicto se resolvió mal

Causa: Se registró una mala resolución

git rerere forget <file>, resuelve de nuevo, confirma

Consejos y trampas

Buenas prácticas

  • ✓Actívalo globalmente si haces rebase a menudo.
  • ✓Revisa siempre los archivos que resolvió rerere antes de git add.

Errores comunes

  • ✗Registrar una resolución equivocada y que se vuelva a aplicar en silencio — revisa los archivos tras las fusiones y usa rerere forget.

Preguntas frecuentes

A:

No por defecto: configura rerere.autoUpdate como true para preparar automáticamente los archivos resueltos.