SourceTree超前一個版本,落後N個版本

來源:互聯網
上載者:User

標籤:commit   功能表列   版本號碼   最好   工作台   

 

SourceTree超前一個版本,落後N個版本

在使用SourceTree的時候經常會遇見超前一個版本,落後N個版本的情況,遇見這種情況應該怎麼辦呢?


首先開啟終端,最好是從SourceTree裡面開啟,功能表列有個終端按鈕。

然後輸入:

$ git reset --hard HEAD^

這句話的意思是將自己最近的一次提交撤銷,回到push之前的狀態。但是所有commit的內容就都消失了非常不建議用這個參數,會犧牲太多的代碼。。

如果不想讓commit消失,可以改一下參數。用這個參數可以保證你提交的代碼原封不動的儲存下來。前提是你本地的工作台是乾淨的。。把所有代碼都暫存。

$ git reset --soft HEAD^


執行這句話之後重新拉取一遍代碼就可以了,push的都會撤銷回來。


如果想一次回退多個push,可以這樣:(例子是撤銷最近三次的提交)

$ git reset --soft HEAD~3


如果想回退到某個指定版本,在終端中輸入:

$ git reset --soft 1234567

1234567是要回退到的版本號碼,根據具體情況而定,這裡只是舉例子。


版本號碼可以不寫全,前幾位就可以了,Git會自動去找。當然也不能唯寫前一兩位,因為Git可能會找到多個版本號碼,就無法確定是哪一個了。


最後總結一下:

  • HEAD指向的版本就是目前的版本,因此,Git允許我們在版本的曆史之間穿梭,使用命令git reset --hard commit_id

  • 穿梭前,用git log可以查看提交曆史,以便確定要回退到哪個版本。

  • 要重返未來,用git reflog查看命令曆史,以便確定要回到未來的哪個版本。


SourceTree超前一個版本,落後N個版本

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.