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
![](https://img.laitimes.com/img/__Qf2AjLwojIjJCLyojI0JCLiQDOxEzX3xCZlhXam9VbsUmepNXZy9CXwJWZ3xCdh1mcvZ2Lc1zaHRGcWdUYuVzVa9GczoVdG1mWfVGc5RHLwIzX39GZhh2csATMflHLwEzX4xSZz91ZsAzMfRHLGZkRGZkRfJ3bs92YskmNhVTYykVNQJVMRhXVEF1X0hXZ0xiNx8VZ6l2cssmch1mclRXY39CXldWYtlWPzNXZj9mcw1ycz9WL49zZuBnLxQTNyETMxUmNyATO0UjNzYzXwUjNxEDM1AzLcFTMyIDMy8CXn9Gbi9CXzV2Zh1WavwVbvNmLvR3YxUjLyM3Lc9CX6MHc0RHaiojIsJye.png)
2.接着找到checkout前的時間
3.右鍵選項後點選revert或者點選具體的類進行比較分析,把丢失的代碼移動過來