paint-brush
Cómo eliminar confirmaciones de Remote en Gitpor@timmouskhelichvili
364,068 lecturas
364,068 lecturas

Cómo eliminar confirmaciones de Remote en Git

por Tim Mouskhelichvili2022/05/31
Read on Terminal Reader
Read this story w/o Javascript

Demasiado Largo; Para Leer

Para eliminar confirmaciones remotas, puede usar el comando git reset si sus confirmaciones son consecutivas desde arriba o una reorganización interactiva de lo contrario. Después de eliminar las confirmaciones localmente, inserte esos cambios en el control remoto mediante el comando git push con la opción forzar.
featured image - Cómo eliminar confirmaciones de Remote en Git
Tim Mouskhelichvili HackerNoon profile picture

Manipular el historial es muy común para los desarrolladores que trabajan con Git regularmente. De hecho, los desarrolladores a menudo necesitan eliminar confirmaciones del historial de Git. Afortunadamente, Git proporciona muchos comandos para hacer posible esta operación.


Vamos a ello 😎.

Paso 0 - Preparación

Antes de manipular el historial de Git, asegúrese de que su directorio de trabajo esté libre de cambios utilizando el comando de estado de git .

Paso 1: eliminar confirmaciones localmente

Para eliminar confirmaciones de un servidor remoto, primero deberá eliminarlas de su historial local.

1.1 Para confirmaciones consecutivas desde arriba

Si las confirmaciones que desea eliminar se colocan en la parte superior de su historial de confirmaciones, use el comando git reset --hard con el objeto HEAD y la cantidad de confirmaciones que desea eliminar.


 git reset --hard HEAD~1

Este comando eliminará la última confirmación .


 git reset --hard HEAD~3

Este comando eliminará las últimas tres confirmaciones .


También puede eliminar hasta una confirmación específica usando el hash de una confirmación, así:

 git reset --hard <hash>

1.2 Para confirmaciones no consecutivas

Sin embargo, si desea eliminar las confirmaciones no consecutivas, deberá usar una reorganización interactiva.


  • [ ] Encuentra el último hash de confirmación que contiene todas las confirmaciones que deseas eliminar usando el comando git reflog .
  • [ ] Inicie una reorganización interactiva con git rebase -i <hash> .
  • [ ] En la pantalla de edición, busque las líneas de confirmación que desea eliminar y elimínelas.
  • [ ] Guardar y salir (es posible que deba resolver los conflictos)
  • [ ] Finalice la reorganización interactiva con git rebase --continue o comience de nuevo abortando la reorganización .

Paso 2: elimina las confirmaciones desde el control remoto

Para eliminar confirmaciones desde el control remoto, deberá enviar sus cambios locales al control remoto mediante el comando git push .


 git push origin HEAD --force


Dado que su historial local difiere del historial remoto, debe usar la opción force .

Pensamientos finales

Como puede ver, Git facilita la eliminación de confirmaciones de un servidor remoto.


Sin embargo, debe tener cuidado al usar el comando git push con la opción de force porque podría perder el progreso si no tiene cuidado.


¡Gracias por leer!