Cómo deshacer operaciones en Git en Linux

  
                

Se puede decir que todos los sistemas operativos tienen operaciones de deshacer, y los sistemas Linux no son una excepción. Y en el Linux Git puedes deshacer la mayoría de las operaciones incorrectas, echemos un vistazo.

Cuando realiza una nueva confirmación, Git guarda una instantánea de su base de código en ese momento en particular, después de eso, puede usar Git para volver a una versión anterior de su proyecto.

En esta publicación de blog, explicaré algunos de los escenarios comunes en los que necesita "deshacer" los cambios que se han realizado y la mejor manera de hacerlo con Git.

Deshacer a " publicada y " cambia

escenario: Ha realizado los git push, enviar los cambios a GitHub, y ahora se da cuenta de cuál de estos cometen Uno es problemático, necesita deshacer ese compromiso.

Método: git revert SHA

Principio: git revert generará un nuevo commit, que corresponde al SHA especificado. Es lo opuesto (o revertido). Si la confirmación original es "sustancia", la nueva confirmación es "antimateria" y mdash; cualquier contenido eliminado de la confirmación original se agregará nuevamente a la confirmación nueva, cualquier contenido agregado en la confirmación original Se eliminará en el nuevo commit.

Este es el escenario de deshacer más seguro y básico de Git, ya que no cambia el historial, por lo que ahora puede presionar la nueva confirmación "inversa" para compensar la confirmación que envió incorrectamente.

Solucionar el último mensaje de confirmación

Escenario: tiene un error administrativo en el último mensaje de confirmación, ha ejecutado git commit -m " Fxies bug # 42 ", pero antes de git push Te das cuenta de que el mensaje debería ser "Corrige el error # 42 ″." Método

: git commit --amend o git commit --amend --m " Corrige el error # 42 "

Principio: git commit --amend se actualizará y reemplazará con un nuevo commit Con el compromiso reciente, este nuevo compromiso combina cualquier cambio con el contenido del compromiso anterior. Si no se realizan cambios actualmente, esta operación solo reescribirá el último mensaje de confirmación.

Deshacer " Local y " Modificar

Escenario: Un gato pasa por el teclado, guarda los cambios inadvertidamente y luego destruye el editor. Sin embargo, no ha cometido estos cambios. Desea restaurar todo en el archivo modificado — al igual que la última confirmación.

Método: git checkout - "nombre de archivo incorrecto"

Principio: git checkout modificará los archivos en el directorio de trabajo a un estado registrado antes de Git. Puede proporcionar un nombre de sucursal o un SHA específico que desee devolver o, de forma predeterminada, Git pensará que desea que el proceso de pago sea HEAD, la última confirmación de la rama de pago actual.

Recuerda: cualquier cambio que hagas de esta manera "deshacer" realmente desaparecerá. Debido a que nunca se han enviado, Git no puede ayudarnos a recuperarlos más tarde. ¡Debe asegurarse de entender lo que tira en esta operación! (Tal vez pueda confirmar primero con git diff)

Restablecer " Local " Modificar

Escenario: Usted envió algo localmente (aún no se ha enviado), pero todas estas cosas Es muy malo, desea deshacer los tres compromisos anteriores, como nunca han ocurrido.

Método: git reset "last good SHA" o git reset --hard "last good SHA"

Principio: git reset devolverá el historial de su base de código al estado SHA especificado. Es como si estas presentaciones nunca hubieran sucedido. Por defecto, git reset conserva el directorio de trabajo. De esta manera, el envío desaparece, pero las modificaciones aún están en el disco. Esta es una opción segura, pero por lo general nos gustaría "restar" y confirmar y modificar el contenido — esta es la función de la opción --hard.

Reanudar después de deshacer la "modificación local"

Escenario: Usted envió varias confirmaciones, luego git reset --hard para deshacer estos cambios (vea el párrafo anterior), luego ¡Te das cuenta de que quieres restaurar estos cambios!

Método: git reflog y git reset o git checkout

Principio: git reflog es un gran recurso para restaurar el historial de proyectos. Puedes recuperar casi cualquier cosa que hayas cometido con — solo con la ayuda de Reflog.

Es posible que ya esté familiarizado con el comando git log, que mostrará una lista de confirmaciones. El git reflog es similar, pero muestra una lista de veces en que el HEAD ha cambiado. Previo1234Página siguiente Total 4 páginas

Copyright © Conocimiento de Windows All Rights Reserved