“Your local changes to the following files would be overwritten by checkout”

“Your local changes to the following files would be overwritten by checkout” (切換分支)解決:
當前分支有未跟蹤的文件,checkout 命令會覆蓋它們,請緩存( stash )或者提交( commit )。

 

1.未跟蹤文件的內容改動很重要,保存修改
//第一種方式 存到暫存區
git add .
git stash 
//取出的時候使用 
git stash pop

//第二種方式 發起一個commit 存到提交歷史
git add.
git commit -m "commit message"


2.未跟蹤文件的內容改動不重要,放棄修改

未使用 git add 緩存代碼時。

可以使用 git checkout -- filepathname 
(比如: git checkout -- readme.md  ,不要忘記中間的 “--” ,不寫就成了檢出分支了!!)。放棄所以的文件修改可以使用 git checkout .

已經使用了  git add 緩存了代碼。
可以使用  git reset HEAD filepathname 
(比如: git reset HEAD readme.md)來放棄指定文件的緩存,放棄所有的緩存可以使用 git reset HEAD

已經用 git commit  提交了代碼。
git reset --hard HEAD^ 來回退到上一次commit的狀態。
此命令可以用來回退到任意版本:git reset --hard  commitid

 

每天努力一點,每天都在進步。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章