天天看點

git checkout到新的分支之後原來未送出的代碼找回

git checkout時遇到的問題

當我們使用git進行代碼版本管理時,如果本地有多個并行開發的需求的話,我們會時不時地切換不同的分支。當我們基于目前分支做了一些改動,但是并沒有執行​

​git ​

​commit指令的話,這時如果我們想直接git checkout到另外的分支,那麼idea就會彈窗提醒我們,選force checkout或者smart checkout。

兩者有何不同

git checkout如果未送出本地代碼。則會提示你選force checkout或者smart checkout。

smart checkout會把本地修改的代碼先儲存到statsh中,再checkout分支。

force checkout在目前分支修改的所有内容都會丢失,隻能用以下步驟找回代碼(找回後需要自行檢查是否有錯漏)

是以保險起見我們一般都是選擇smart checkout。

不慎點選force checkout後如何找回

force checkout後可以通過以下步驟找回丢失的代碼

1.在項目檔案夾右鍵。點選local history->show history

git checkout到新的分支之後原來未送出的代碼找回

2.接着找到checkout前的時間

git checkout到新的分支之後原來未送出的代碼找回

 3.右鍵選項後點選revert或者點選具體的類進行比較分析,把丢失的代碼移動過來

git checkout到新的分支之後原來未送出的代碼找回

繼續閱讀