Skip to main content
  1. Learn
  2. Software Development
  3. Guides
  4. Git tutorial
  5. Comandos y herramientas de Git
  6. Comandos del historial de commit git
GuidesSoftware DevelopmentBacklog
Git

Project and code management together.

Comandos del historial de commit git


Modificar la confirmación y los mensajes anteriores

$ git commit --amend

Añada la opción --amend para sobrescribir el último commit de la rama en la que está trabajando.

Cuando no hay archivos en un índice, puede volver a comprometerse con la confirmación anterior añadiendo la opción --amend, y se le pedirá que edite el mensaje de confirmación existente.

Véase:

$ git rebase -i <commit>

Añada un hash de confirmación y aparecerá una lista de todas las confirmaciones hasta la última. Busque la confirmación que desea modificar y cambie esa línea de pick a edit, luego guarde y salga.

A continuación, añada la opción --amend al commit. Aparecerá una pantalla para añadir un mensaje. Modificar el mensaje.

$ git commit --amend

Finalmente, añada la opción --continue para ejecutar la rebase.

$ git rebase --continue

Véase:

$ git rebase --abort

Si desea salir de la operación de rebase, puede hacerlo añadiendo la opción --abort.

Mostrar registro de referencia

$ git reflog

El comando reflog permite ver una lista de commits que HEAD solía indicar en el pasado.

08084a5 HEAD@{0}: commit: append description of the pull command
  99daed2 HEAD@{1}: commit: append description of the commit command
  48eec1d HEAD@{2}: checkout: moving from main to issue1
  326fc9f HEAD@{3}: commit: append description of the add command
  48eec1d HEAD@{4}: commit (initial): first commit

Se mostrarán tanto los commits borrados como los confirmados con éxito recopilados por rebase.

Mostrar registro de referencia del tipo de rama

$ git reflog <ref>

Esto mostrará una lista de commits por cada vez que la punta de <ref> haya cambiado, similar a la de abajo.

445e0ae issue1@{0}: commit (merge): Merge branch 'main' into issue1
1c904bd issue1@{1}: commit (amend): modify description of the pull command
08084a5 issue1@{2}: commit: append description of the pull command
99daed2 issue1@{3}: commit: append description of the commit command
48eec1d issue1@{4}: branch: Created from 48eec1ddf73a7fb508ef664efd6b3d873631742f

Podemos ver el historial de rebase tanto de los commits eliminados como de los existentes.

Eliminar commit anterior

$ git reset --hard HEAD~

Véase:

$ git reset --hard <commit>

Use el comando reflog para buscar commits antes de que fueran rebasados. Identifica el hash del commit o el valor de [HEAD@{number}] del commit que se produjo antes del rebase. En este ejemplo, 71bdfbd y HEAD@{4} son las referencias a la confirmación.

a51f8d2 HEAD@{0}: rebase -i (finish): returning to refs/heads/dev
  a51f8d2 HEAD@{1}: rebase -i (squash): update 1
  3a273e1 HEAD@{2}: rebase -i (squash): updating HEAD
  f55ef69 HEAD@{3}: checkout: moving from dev to f55ef69
  71bdfbd HEAD@{4}: commit: update 2
  f55ef69 HEAD@{5}: commit (amend): update 1

Añada el valor hash (71bdfbd y HEAD@{4}) a <commit> al ejecutar el comando reset.

La posición de cabecera de la rama se moverá ahora a la confirmación anterior a la ejecución del rebase. El estado de la rama ahora será idéntico al que tenía antes de ejecutar rebase.

Cancelar reinicio anterior

$ git reset --hard ORIG_HEAD

ORIG_HEAD se refiere al commit anterior al reinicio. Puede revertir el reset anterior utilizando reinicio a ORIG_HEAD.

Copiar commit de otra rama

$ git cherry-pick "<commit>"

La confirmación identificada por su hash se copiará en la rama actual.

Véase:

$ git log --grep "<pattern>"

Muestra las confirmaciones con el texto especificado en <pattern>.

Subscribe to our newsletter

Learn with Nulab to bring your best ideas to life