簡體   English   中英

git:從倉庫中檢出文件后,文件立即顯示為已修改

[英]git: File shows up as modified immediately after checkout from repo

jen.test@wswp0 MINGW64 /c/inetpub/wwwroot/2.0 (master)

$ git fetch


jen.test@wswp0 MINGW64 /c/inetpub/wwwroot/2.0 (master)

$ git checkout origin/master -- testFile.php


jen.test@wswp0 MINGW64 /c/inetpub/wwwroot/2.0 (master)

$ git status testFile.php

On branch master

Changes to be committed:

  (use "git reset HEAD <file>..." to unstage)

        modified:   testFile.php


jen.test@wswp0 MINGW64 /c/inetpub/wwwroot/2.0 (master)

$

這就是我想要做的-我已經從另一台計算機上更改了包括testFile.php在內的幾個文件。 這些文件被提交到倉庫,我執行了“ git push origin master”。 我喜歡從存儲庫中獲取最新的testFile.php,而不是其他文件。

我認為您執行的命令可能會引起一些混亂。 執行git fetch ,您確實更新了跟蹤分支origin/master 但是,您實際上並沒有更新本地master分支,因為您從未合並或進行過git pull 命令:

git checkout origin/master -- testFile.php

實際上使用來自不同分支的版本更新testFile.php本地工作副本。 這似乎令人困惑,但是在您執行此操作時,您的本地master和分支的origin/master不是同一個人。

然后, git status報告此文件相對於本地master分支的HEAD已更改。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM