tortoisegit 還原遠程分支到某個版本


v2還原到v1

1、強制還原(git reset)

    如果使用這種方式還原到v1,將丟失還原到v1到v2之間的所有提交及日志。

1.1顯示日志

104633_9fLD_182501.png

有save1、save2兩條提交記錄。 

1.2 重置版本(本地分支還原)

 

使用硬重置,否則重置后,還會有未提交的文件。重置到save1版本。

1.3 提交(推送到遠程分支)

    因為我們本地庫版本比遠程庫版本低,需要強制推送

111529_0tqk_182501.png

1.4 缺點

這種方式回退代碼的弊端顯而易見,那就是會使 HEAD 指針往回移動,從而會失去之后的提交信息。將來如果突然發現,save2 的代碼是有用的,但是已經找不回來了。

2、溫和還原(checkout)

    為保留v1-v2的提交和歷史記錄,可以使用該方式。

2.1導出還原版本(v1)

114325_qO8b_182501.png

2.2 提交還原版本(v1)

    將導出的版本作為新版本v3提交。

3、溫和還原(git revert)

git revert的作用通過反做創建一個新的版本,這個版本的內容與我們要回退到的目標版本一樣,但是HEAD指針是指向這個新生成的版本,而不是目標版本。

3.1 顯示日志

每次提交創建一個類,分別為Test1、Test2、Test3。

 

3.2 還原此版本做出的變更 

還原Test2版本

 

 

還原后,test2版本提交的代碼被取消了(即Test2類被刪除了)。

 

 

3.3 提交

可以將修改代碼提交到遠程

 

 查看日志,以前的提交記錄沒有丟失,最新的為剛提交版本。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM