git pull拉取程式碼沒有更新解決方法:1、git pull 由於缺少資訊而沒有更新檔案;2、git pull 由於本地倉庫中未提交的檔案而不更新檔案。
git pull 功能可能會因為多種原因而發生故障。我們將研究常見的原因以及如何解決這些問題。
git pull 由於缺少資訊而沒有更新檔案
當 Git 沒有足夠的資訊可以使用時,你可能會收到一條錯誤訊息,如下所示。
$ git pull There is no tracking information for the current branch. Please specify which branch you want to merge with. See git-pull(1) for details. git pull If you wish to set tracking information for this branch you can do so with: git branch --set-upstream-to=/ master
如果你收到這樣的訊息,Git 會要求你指定遠端分支以追蹤你目前的本機分支。使用 git branch --set-upstream-to=/ master 命令,然後執行 git pull 命令將 Git 指向你希望更改的來源。
git pull 由於本地倉庫中未提交的文件而不更新文件
作為原始碼管理系統,Git 盡最大努力防止你丟失文件和資料。出於這個原因,Git 可能會在執行 git pull 命令時拒絕將你的本地文件與遠端倉庫中的文件合併。
由於 Git 沒有 forced git pull 指令,你可以呼叫系統來合併變更。如果你有未提交的更改,你可能會收到如下所示的錯誤訊息。
$ git pull From REPOSITORY_URL * branch master -> FETCH_HEAD a152b19..171e4a2 master -> origin/master Updating a152b19..171e4a2 error: Your local changes to the following files would be overwritten by merge: file1.txt file2.txt Please commit your changes or stash them before you merge. Aborting
為了解決這個問題,在執行 git pull 命令之前執行 git stash 命令來儲存你的本機變更。
最後一步是在 git pull 指令之後執行 git stash apply。此命令會將隱藏的變更套用到你的工作目錄。
$ git stash Saved working directory and index state WIP on master: d91368b Previous commit message $ git pull From REPOSITORY_URL * branch master -> FETCH_HEAD a152b19..171e4a2 master -> origin/master Updating a152b19..171e4a2 Fast-forward file1.txt | 1 + file2.txt | 1 + 2 files changed, 2 insertions(++) $ git stash apply
你也可以在執行 git pull 指令之前提交更改。
$ git commit -am 'Committing two files before git-pull' [master d91368b] Committing two files before git-pull 2 files changed, 2 insertions(++) $ git pull From REPOSITORY_URL * branch master -> FETCH_HEAD a152b19..171e4a2 master -> origin/master Updating a152b19..171e4a2 Fast-forward file1.txt | 1 + file2.txt | 1 +
2 files changed, 2 insertions( )
#如果你不需要本地更改,你可以在執行 git pull 指令之前丟棄它們。
你可以使用 git rest --hard 指令丟棄未追蹤的檔案。確保你不需要這些更改,因為你無法撤銷丟棄。
以上是git pull拉取程式碼沒有更新怎麼辦的詳細內容。更多資訊請關注PHP中文網其他相關文章!