git中pull失敗的解決方法:1、利用“git reset --hard”強制覆蓋掉自己的本地修改;2、利用“git stash”推送一個新的儲藏,拉取之後利用“ git stash pop」將修改儲存到暫存區;3、若依然出現問題,則將檔案儲存到暫存區並提交註解即可。
本文操作環境:Windows10系統、Git2.30.0版、Dell G3電腦。
git pull 不成功的原因基本上都是本地的程式碼修改了, 而別人已經在倉庫中提交了相同文件的修改.因此在git 看來,你不是在這個文件最新的狀態下進行的修改, 因此git pull 有可能就會失敗. git pull 在以下兩種狀態下出現失敗的解決辦法不同: (注意:要仔細看命令行的提示, 有時候明明git pull 都提示沒成功了, 但是你還沒察覺)
代碼已提交至本地倉庫之後, git pull 失敗
產生衝突, 接下來就解決衝突
所謂解決衝突, 是將衝突檔案修改成最終想要的樣子
程式碼未提交到本機倉庫, git pull 失敗
更新失敗的提示:
問題:
由於沒有在修改程式碼前從遠端拉取最新程式碼,
git pull時報錯:
error: Your local changes to the following files would be overwritten by merge
解決方法:
1、強制覆蓋掉自己的本機修改(不推薦,個人修改程式碼未儲存)
git reset --hard //强制覆盖 git pull
2、將修改儲存到暫存區
git stash //推送一个新的储藏 git pull //拉取 git stash pop //从暂存区取出储藏 (更新后的代码和自己写的代码合并,可能存在冲突,需要手动解决冲突)
注意:
從暫存區取得後,仍可能出現無法pull新程式碼的問題,報錯為:
Pulling is not possible because you have unmerged files.
#3、解決方法:
git add -u //全写为git add --update,仅将被修改的文件提交到暂存区 git commit -m"" git pull
將檔案儲存到暫存區並提交註解(不能為空),再拉取程式碼即可成功。當文件衝突時產生該問題。
推薦學習:《Git教學》
以上是git中pull失敗了怎麼辦的詳細內容。更多資訊請關注PHP中文網其他相關文章!