IDEA Git版本回滾提交方式

以此文記錄下在IDEA中如何回滾項目歷史版本,並提交遠程git

大體分爲兩步:工具

第一步,回滾本地代碼;.net

第二步,回滾遠程代碼;命令行

 

首先,咱們先來回滾本地代碼3d

按照下圖的步驟,獲取你要回滾的歷史版本的版本號blog

而後項目根目錄右鍵 Git->Repository->Reset HEAD get

Reset Type 有三種:源碼

mixed 默認方式,只保留源碼,回退commit和index信息
soft 回退到某個版本,只回退了commit的信息,不會恢復到index file一級。若是還要提交,直接commit
hard 完全回退,本地源碼也會變成上一個版本內容it

此時咱們選擇Hard完全回退,點擊Reset就能將本地代碼版本回滾到指定版本。io

 

而後咱們開始將回滾的本地代碼提交到遠程倉庫,此時有兩種方式:

第一種,直接強制提交,使用git命令提交 git push -f,可是這樣會把回滾版本以後的提交記錄所有刪除,所以不建議這樣作。

第二種,用前面咱們回滾本地的方式,再次回滾到最新版本。

首先,咱們獲取到遠程分支最新版本的版本號

而後,咱們再次Git->Repository->Reset HEAD 此次與以前有些不同,咱們Reset Type採用Mixed方式將源碼保留,而後點擊Reset。

最後咱們發現代碼已是舊版本的代碼,而且版本仍是最新版本,此時正常提交push後咱們的本地和遠程代碼的回滾就完成了。

 

參考:https://blog.csdn.net/gomeplus/article/details/78241070

 

上面的操做基於IDEA工具來進行操做,其底層原理爲利用git的tag標籤回滾

git tag操做參考:https://blog.csdn.net/fuchaosz/article/details/51698896

咱們只在此證實利用Git tag回滾操做與上面的IDEA操做的關係

首先,切換到IDEA的Terminal命令行(也能夠是dos命令行,Git Bash命令行),執行下面的命令

注意tag詳細信息裏面的commit id

咱們在看看git的歷史提交記錄中上面tag提交的那次記錄的Revision Number

Revision Number爲 b8e7431ac80cc37d315362b7d2968d4940583820,不一樣人的編號會不同,可是commit id 與 Revision Number必定是同樣的

那麼咱們以前IDEA操做的也都是經過這種原理來實現的。

相關文章
相關標籤/搜索