crear - git remove tag
Git: ¿cómo combinar de forma inversa un compromiso? (5)
Para crear una nueva confirmación que ''deshaga'' los cambios de una confirmación pasada, use:
$ git revert <commit>
También es posible eliminar una confirmación de un punto arbitrario en el pasado al volver a establecer la base de datos y luego restablecerla, pero realmente no desea hacer eso si ya ha enviado sus confirmaciones a otro repositorio (o si alguien más lo ha retirado) .
Con SVN, es fácil fusionar de forma inversa una confirmación, ¿pero cómo hacer eso con Git?
Para revertir un commit de fusión, necesitas usar: git revert -m. Entonces, por ejemplo, para revertir la última fusión más reciente usando el padre con el número 1, usaría:
git revert -m 1 HEAD
Para revertir un commit de fusión antes del último commit, harías:
git revert -m 1 HEAD^
Use git show <merge commit SHA1>
para ver a los padres, la numeración es el orden en que aparecen, por ejemplo, Merge: e4c54b3 4725ad2
documentación de git merge: http://schacon.github.com/git/git-merge.html
git merge discussion (confuso pero muy detallado): schacon.github.com/git/howto/revert-a-faulty-merge.txt
Si no desea realizar la confirmación, o desea realizar la tarea más tarde (el mensaje de confirmación seguirá estando preparado para usted, que también puede editar):
git revert -n <commit>
Si te entiendo correctamente, estás hablando de hacer una
svn merge -rn:n-1
para salir de un compromiso anterior, en cuyo caso, probablemente estés buscando
git revert
git reset --hard HEAD^
Use el comando de arriba para revertir los cambios de fusión.