tag - ¿Cómo mueves un compromiso al área de ensayo en git?
¿para qué nos sirve el sha-1 cuando creamos tags? (2)
Una manera simple
Archivos comprometidos al área de ensayo
git reset --soft HEAD^1
Puesta en escena para UnSatge : (use "git reset HEAD ..." para abandonar la escena)
git reset HEAD git commands.txt or git reset HEAD *ds.txt
aquí, * -> todos los archivos terminan con ds.txt para salir de escena.
Consulte la imagen a continuación para mayor claridad:
Si desea mover un compromiso al área de ensayo, eso no lo compromete y mueve todos los cambios que estaban dentro del área de ensayo (colocando efectivamente la rama en el estado en el que estaría antes de la confirmación) - ¿Cómo lo haces? ¿O es algo que no puedes hacer?
Lo más parecido que sé hacer es copiar todos los archivos que se cambiaron en la confirmación a otro lugar, reiniciar la rama a la confirmación antes de la confirmación de que está tratando de mover al área de preparación, mover todo el copiar los archivos nuevamente en el repositorio y luego agregarlos al área de preparación. Funciona, pero no es exactamente una buena solución. Lo que me gustaría poder hacer es deshacer el compromiso y mover su cambio al área de preparación. Se puede hacer? Y si es así, ¿cómo?
git reset --soft HEAD^
Esto restablecerá su índice a HEAD^
(la confirmación anterior) pero dejará sus cambios en el área de ensayo.
Hay algunos diagramas útiles en los documentos de git-reset
Si está en Windows, puede necesitar usar este formato:
git reset --soft HEAD~1