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
2.接着找到checkout前的時間
3.右鍵選項後點選revert或者點選具體的類進行比較分析,把丢失的代碼移動過來