March 7, 2025
Como eliminar un commit concreto
Original
86207408bacf46cf899c073e336f1c64padre
hijo
nieto
Aqui
hay
saltos
de
linea
Para borrar un solo commit en Git, puedes usar el comando git rebase interactivo. Aquí te dejo los pasos detallados para eliminar el commit "prueba" que has mencionado:
- Abre tu terminal o consola de comandos en el directorio de tu proyecto.
- Ejecuta el siguiente comando para iniciar un rebase interactivo:
git rebase -i HEAD~nDonde n es el número de commits hacia atrás desde el HEAD que quieres listar para rebase. Por ejemplo, si "prueba" es el tercer commit desde el HEAD, entonces usarías:
git rebase -i HEAD~3- Esto abrirá una lista de commits en tu editor predeterminado, similar a esta:
pick <commit-hash-3> prueba
pick <commit-hash-2> feat(footer): encapsular la lógica del footer en un componente separado
pick <commit-hash-1> feat(assign-orders): refactorización del datepicker en funciones de manejo de cambio de fecha y en la vista usando el calendar module- Cambia
pickadrop(o simplemente elimina la línea) para el commit que deseas borrar:
drop <commit-hash-3> prueba
pick <commit-hash-2> feat(footer): encapsular la lógica del footer en un componente separado
pick <commit-hash-1> feat(assign-orders): refactorización del datepicker en funciones de manejo de cambio de fecha y en la vista usando el calendar module- Guarda y cierra el editor. El rebase se ejecutará y eliminará el commit "prueba".
- Si estás trabajando con una rama que se ha compartido con otros (por ejemplo, en un repositorio remoto), necesitarás forzar el push para actualizar el historial:
git push origin nombre-de-tu-rama --forceTen en cuenta que forzar un push puede sobrescribir los cambios en el repositorio remoto, así que asegúrate de que nadie más esté trabajando en esos commits antes de hacerlo.

Written by Pol Valle
I am particularly drawn to developing applications that are not only functional but also visually appealing and easy to use. I accomplish this by implementing SOLID principles and clean architecture, and applying testing to ensure quality.