1.3 KiB
| created | updated | tags | |
|---|---|---|---|
| 2024-02-20 11:27 | 2024-03-12 13:49 |
|
Fix messy commits
Ya que estas opciones sobre escriben el historial de git, solo deben aplicarse en local y no commits publicados a un remote.
Como alternativa se puede intentar actualizar el historial remoto siempre y cuando el historial sea igual al local (osea, nosotros fuimos los últimos en actualizarlo y nadie ha hecho nada más). Para esto utilizamos git push --force-with-lease.
Last commit
Si solo necesitamos agregar un cambio pequeño al ultimo commit (typo o correr el formatter), podemos aplicarlo con git commit --ammend, se puede sobre escribir el mensaje con -m.
Mutiple commits
Se pueden arreglar el historial de commits con un git rebase -i [since commit or branch] y utilizar las estrategias de pick, squash, reword y drop.
En caso de que sepamos que haremos un commit que luego no necesitaremos, podemos hacer:
git commit --fixup [commit hash]-> descarta el commit message de este commit y mantiene el del commit de referenciagit commit --squash [commit hash]-> git juntará los mensajes de todos los commits a hacer squash y el commit de referencia.
Finalmente podemos hacer git rebase -i --autosquash y git eligirá las opciones necesarias a tomar en vez de tener que hacerlo de manera manual.