1. 程式人生 > >git reset-----git 本地倉庫回退

git reset-----git 本地倉庫回退

本地倉庫的回退(撤銷本地的commit): git  reset:

reset命令有3種方式:

git reset --mixed:此為預設方式,不帶任何引數的git reset,即時這種方式,它回退到某個版本,只保留原始碼,回退commit和index資訊git 
reset --soft  HEAD^:回退到某個版本,只回退了commit的資訊,不會恢復到index file一級。如果還要提交,直接commit即可
git reset --hard:徹底回退到某個版本,本地的原始碼也會變為上一個版本的內容

  1. #回退所有內容到上一個版本  
    git reset HEAD^  
  2. #回退a.py這個檔案的版本到上一個版本  
    git reset HEAD^ a.py  
  3. #向前回退到第3個版本  
    git reset –-soft HEAD~3  
  4. #將本地的狀態回退到和遠端的一樣  
    git reset –-hard origin/master  
  5. #回退到某個版本  
    git reset 057d  
  6. #回退到上一次提交的狀態,按照某一次的commit完全反向的進行一次commit  
    git revert HEAD  

當更新程式碼出現問題的時候(可能由於別人提交的程式碼和我們提交的程式碼有衝突,或者管理人員修改了我們的程式碼之後再提交),我們最為常用的辦法是。

1.確保分支正確,git branch

2.用git reset 命令恢復到更老的版本

3.git checkout 和 git rm,確保恢復到了想要的老的版本。rm 的內容可以在合程式碼的時候得到,有衝突的話會提示。

4.git fetch   git merge   ;如果是android的話,repo sync ,疑惑repo sync xxx(某一個git庫)