1

我有两台机器,一台使用 git 1.7.0.4,另一台使用 1.7.12.4(Apple Git-37)。

我已经在每台机器上修改了树中的一个文件(相同的更改,相同的文件,但位于两台不同的计算机上),但还没有在任何一台上暂存。

# On branch master
# Changes not staged for commit:
#   (use "git add <file>..." to update what will be committed)
#   (use "git checkout -- <file>..." to discard changes in working directory)
#
#   modified:   Rakefile
#
# Untracked files:
#   (use "git add <file>..." to include in what will be committed)
#
#   Hs-At_AND/

(两个版本的 git 显示略有不同。我只显示 1.7.12.4 显示。)

在 1.7.12.4(在我的 Mac 上),git diff Rakefile显示 Rakefile 相对于 repo 版本的变化。

但另一方面,git diff Rakefile什么也不做。没有输出,没有错误信息。

StackOverflow 上还有其他类似的问题(例如, git diff 没有输出),但这些似乎都在询问未跟踪的文件。我的问题是关于已跟踪但尚未暂存的文件。

显然我在这里没有做错任何事。那我的安装有什么问题吗?有什么我可以改变的.gitconfig吗?

4

1 回答 1

-1

由于它在两台不同的机器上,您可能在两台不同的物理设备上运行该命令,其中只有一个包含更改的文件。

文件更改是机器本地的(除非您使用共享/远程文件系统),直到您提交并推送更改。其他机器在获取/提取更新的存储库之前不会看到本地更改。

于 2013-09-30T19:00:55.653 回答