pushed example ejemplo changes git git-revert

example - git revert pushed commit



git revert--no-commit sin puesta en escena (1)

No hay un solo comando para ello. Como ya mencionó, puede combinar git revert -n con git reset para deshacer la reversión en el índice.

Además de ese método, puedes usar git apply -R para "aplicar en reversa" un parche, y puedes convertir un commit en un parche con git show , así que:

$ git show <rev> | git apply -R

tiene el mismo efecto, con una diferencia importante (pero sutil). Permítame citar de la documentación de git revert y agregar mi propio énfasis:

-n, --no-commit
Normalmente, el comando crea automáticamente algunas confirmaciones con los mensajes de registro de confirmación que indican qué confirmaciones fueron revertidas. Este indicador aplica los cambios necesarios para revertir las confirmaciones nombradas a su árbol de trabajo y al índice, pero no realiza las confirmaciones. Además, cuando se utiliza esta opción, su índice no tiene que coincidir con la confirmación HEAD. La reversión se realiza contra el estado inicial de su índice.

En otras palabras, git revert -n opera en y sobre el índice , con el efecto secundario de actualizar su árbol de trabajo. El comando git apply opera (por defecto de todos modos) solo en el árbol de trabajo, y de hecho puede usarse fuera de un repositorio de git.

Por lo general, el comando git revert crea automáticamente algunas confirmaciones con los mensajes de registro de confirmación que indican qué confirmaciones fueron revertidas.

Para evitar la confirmación automática, existe la opción -n (o --no-commit ).

Pero después de este comando, los archivos revertidos están en el área preparada. Puedo desarreglarlos usando el comando git reset HEAD .

¿Hay una forma directa de revertir un compromiso sin cometer y organizar?

En otras palabras: ¿hay un comando directo para revertir una confirmación aplicando los cambios solo al directorio de trabajo, sin tocar el índice?