今天將本地分支與遠(yuǎn)程master分支合并時,出現(xiàn)了這樣的問題:

image.png
這是因為本地有文件改動未提交,并且該文件和Git服務(wù)器最新版本有沖突,此時pull更新就會提示錯誤,無法更新。
記錄下解決方法
方法一
保留本地改動的同時,并把Git服務(wù)器上的代碼pull下來:
先把本地改動暫存到本地倉庫,pull代碼后再把這部分改動代碼拿出來。
【步驟】
-
通過
VCS -> Git -> Stash Changes,將本地的所有改動暫存到本地倉庫。
這一步執(zhí)行后會撤銷本地的所有改動,這時候不用擔(dān)心自己修改的代碼怎么不見了,還可以拿出來的。
image.png -
現(xiàn)在可以pull了
image.png
pull完成后本地代碼就更新到最新了,也不會報錯了~
image.png 如果想把自己修改的部分從本地倉庫中再拿出來的話,可以通過
VCS -> Git -> unStash Changes把之前的改動合并到本地。
方法二
直接覆蓋本地的代碼,放棄自己本地的改動,只保留服務(wù)器端代碼
直接回退到上一個版本,再進(jìn)行pull。
【步驟】
-
直接
VCS -> Git -> Reset HEAD...
image.png -
選擇需要的reset模式:hard(即放棄本地代碼,新修改的都不要了,退回上一版本,再拉取代碼到本地。)
image.png
image.png
延伸
在使用Git的過程中,有些時候我們只想要 git 服務(wù)器中的最新版本的項目,對于本地的項目中修改不做任何理會,就需要用到 Git pull 的強(qiáng)制覆蓋。
git fetch --all
git reset --hard origin/master
git pull
git pull從遠(yuǎn)程拉取最新版本 到本地自動合并,git fetch從遠(yuǎn)程獲取最新版本 到本地不會自動合并





