[英]git pull error when working with remote repository
我建立了一個全新的項目。 我創建了一個remote repository
,並在本地計算機上進行了此操作。
$ git init
$ git remote add origin git@...
$ git add .
$ git commit
$ git push -u origin master
$ git branch -u origin/master
然后,我在remote repository
的自述文件中寫了一些東西。 當我在本地計算機git checkout master
上鍵入時,得到以下信息:
已經在“ master”上您的分支落后“ origin / master” 2次提交,並且可以快速轉發。 (使用“ git pull”更新您的本地分支)
但是,當我嘗試按建議執行$ git pull
,我得到了:
錯誤:合並后,以下未跟蹤的工作樹文件將被覆蓋:README.md請先移動或刪除它們,然后再進行合並。
那我如何獲得從origin
到我的master
的變更呢?
就像Git所說的那樣,您必須刪除未跟蹤的工作樹文件(在您的情況下,只有一個名為“ README.md”的文件)。 如果您要保留更改,請提交更改,然后進行拉取。
問題:為什么不做git clone ...
?
編輯
當您執行git pull
,git會執行git fetch
然后進行git merge
。 如果您沒有從遠程轉移,則合並可能像快進一樣簡單。 但是,如果這樣做,git需要將更改合並在一起。 為了確保您不會丟失任何工作,git會抱怨工作目錄中的合並將觸及的文件更改。
要保留您的更改,您可以
git add README.md
),創建存儲( git stash
),進行合並( git merge origin/master
)並彈出存儲( git stash pop
)或 git add README.md
后跟git commit
),然后從遠程git merge origin/master
更改( git merge origin/master
)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.