Ir al contenido

¿Qué es jj?

Jujutsu (comando: jj) es un sistema de control de versiones que usa git como backend de almacenamiento, sustituyendo el modelo de git de cara al usuario por uno más limpio y consistente.

Concepto git jj
Cambios sin confirmar «Staging area» separada No existen — las ediciones forman parte inmediatamente del commit de la copia de trabajo
Puntero de rama Se mueve automáticamente al hacer commit Se llama bookmark; lo mueves tú explícitamente
Enmendar un commit git commit --amend Simplemente edita el archivo — jj toma instantáneas continuamente
Deshacer git reflog (manual) jj op undo — log de operaciones completo, reversible desde cualquier estado
Conflictos Hay que resolverlos antes de confirmar Pueden confirmarse y resolverse más tarde

La staging area de git y su historial mutable crean fricción en las herramientas gráficas. El modelo de jj encaja de forma natural en una interfaz visual:

  • Cada fila del log es un commit real — no existe el concepto de «árbol de trabajo sucio».
  • Los change ID son estables entre rebases, así que los enlaces y referencias no se rompen.
  • El log de operaciones te da un historial completo y reversible de cada acción.

No necesitas conocer los comandos de git — wyrmflow lo gestiona todo visualmente. Pero entender que jj se apoya sobre git significa que tus repos son totalmente compatibles con GitHub, GitLab y cualquier otro host de git.