場(chǎng)景:代碼commit到本地倉(cāng)庫(kù),還沒(méi)有push到遠(yuǎn)程倉(cāng)庫(kù)州藕,這時(shí)要回退代碼束世。
介紹下Reset Head中三種Reset Type類(lèi)型:
1.Mixed(默認(rèn)):它回退到某個(gè)版本,本地會(huì)保留源碼床玻,回退commit和index信息毁涉,若要提交重新commit。
2.soft: 回退到某個(gè)版本锈死,只回退了commit的信息贫堰,不會(huì)恢復(fù)到index file一級(jí),若要提交重新commit待牵。
3.Hard:徹底回退到某個(gè)版本其屏,本地的源碼也會(huì)變?yōu)樯弦粋€(gè)版本的內(nèi)容。
操作如下:
拿ConfigServerApplication類(lèi)中的fun() 方法來(lái)驗(yàn)證缨该,每次提交修改方法中的數(shù)據(jù)偎行,目前本地倉(cāng)庫(kù)的記錄是10,遠(yuǎn)程倉(cāng)庫(kù)的記錄是8,如下:
現(xiàn)回退到9睦优,記錄9的version number:d7c653bdbd25c530aba6ad8c202048487b54a0ab
選擇Reset Head:
Reset Type:選擇默認(rèn)的Mixed
To Commit:輸入剛才記錄的9的version number
點(diǎn)擊Reset
commit記錄回退到了9渗常,本地記錄還是10,這時(shí)可重新commit到本地倉(cāng)庫(kù)或revert還原到本地倉(cāng)庫(kù)的記錄汗盘。push時(shí)只有記錄9.
若Reset Type:選擇Hard皱碘,如下:
本地和commit記錄都會(huì)回退,點(diǎn)擊Reset后如下:
如果退回了上個(gè)版本隐孽,不小心刪除了本地倉(cāng)庫(kù)的代碼一下操作可以還原:
在project處右擊癌椿,選擇“Local History” --> “Show History” 。
此時(shí)會(huì)彈出一個(gè)框菱阵,左側(cè)你會(huì)看到自己的修改歷史踢俄,右側(cè)是對(duì)應(yīng)修改的內(nèi)容,
選中需要恢復(fù)的歷史版本晴及,點(diǎn)擊上方的Revert Selection 按鈕(類(lèi)似于Word里面的撤銷(xiāo)按鈕)即可都办。
OK!大功告成虑稼!
本段操作參考:https://blog.csdn.net/princeluan/article/details/78326201