Git拉取失敗 Your local changes would be overwritten by merge.Commit, stash or revert them to proceed.

今天在使用Git pull 代碼的時候,出現了這樣的問題:

Git Pull Failed
Your local changes would be overwritten by merge.
Commit, stash or revert them to proceed.


這是因爲本地有文件改動未提交,並且該文件和Git服務器最新版本有衝突,此時pull更新就會提示錯誤,無法更新。
Git小白,不敢隨便點點點,所以記錄下解決方法~

方法一:

保留本地改動的同時,並把Git服務器上的代碼pull下來:
–>先把本地改動暫存到本地倉庫,pull代碼後再把這部分改動代碼拿出來。
步驟:
1、通過VCS -> Git -> Stash Changes,將本地的所有改動暫存到本地倉庫。
這一步執行後會撤銷本地的所有改動,這時候不用擔心自己修改的代碼怎麼不見了,還可以拿出來的

2、現在可以pull 了

pull完成後本地代碼就更新到最新了,也不會報錯了~

3、如果想把自己修改的部分從本地倉庫中再拿出來的話,可以通過VCS -> Git -> unStash Changes 把之前的改動合併到本地。

方法二:

直接覆蓋本地的代碼,放棄自己本地的改動,只保留服務器端代碼:
–>直接回退到上一個版本,再進行pull。
步驟:
1、直接 VCS -> Git -> Reset HEAD...

2、選擇需要的reset模式

這裏我自己也還沒有玩過,僅供參考哈~~

git reset --soft 只是將HEAD引用指向指定的提交,工作區跟暫存區的內容不會改變
git reset --mixed(默認選項)將HEAD指向指定的提交,暫存區的內容隨之改變,工作區內容不變
git reset --hard 將HEAD指向指定的提交,暫存區跟工作區都會改變

————————————————
版權聲明:本文爲CSDN博主「高大寶呀」的原創文章,遵循CC 4.0 BY-SA版權協議,轉載請附上原文出處鏈接及本聲明。
原文鏈接:https://blog.csdn.net/sinat_34937826/article/details/107316884

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