Git descarta los cambios locales

Dividido en tres situaciones:

  1. Los cambios no se han agregado del área de trabajo al área de almacenamiento temporal, es decir git add, antes de que se ejecute el comando, como por ejemplo:

En este momento, puede usar git checkoutcomandos para deshacer la modificación, como:

 

git checkout -- rainbow.txt start.txt
git checkout -- *
git checkout -- *.txt


  1. Se ha agregado el cambio al área de almacenamiento temporal, es decir, se ha ejecutado el git addcomando, como:


    En este momento, puede usar git resetcomandos para deshacer la modificación, como:

 

git reset HEAD rainbow.txt start.txt
git reset HEAD  *
git reset HEAD *.txt

Cabe señalar que después de ejecutar el comando anterior, la modificación local no desaparecerá, sino que solo regresará al área de trabajo desde el área de almacenamiento temporal , que es el estado que se muestra en el primer caso. Continúe usando la operación en el primer caso, puede abandonar la modificación local.



  1. El código se ha enviado al almacén local, es decir, el git commitcomando se ha ejecutado . En este momento, el espacio de trabajo está limpio. Si desea deshacer la modificación anterior, debe realizar la operación de reversión de la versión:

 

#回退到上一个版本
git reset --hard HEAD^
#回退到上上次版本
git reset --hard HEAD^^
git reset --hard HEAD^^^

#回退到指定commitid的版本
git reset --hard  commit_id

Puede usar git logo el git reflogcomando para ver el historial de git enviado, obtener commit_id.

 

Supongo que te gusta

Origin blog.csdn.net/mango9126/article/details/105944942
Recomendado
Clasificación