`git diff'don';没有显示任何变化吗?为什么不呢?
我在一个git回购协议中做了一些更改。所以我首先做了一个git status,它显示一个文件被更改了。然后,我做了一个`git diff'don';没有显示任何变化吗?为什么不呢?,git,Git,我在一个git回购协议中做了一些更改。所以我首先做了一个git status,它显示一个文件被更改了。然后,我做了一个git diff来查看更改,但根本没有输出任何内容(请参见下面的输出),甚至没有模式更改或任何内容 有人知道为什么git diff在明显有一些变化的情况下不输出任何东西吗?欢迎所有提示 $ git status On branch master Your branch is up-to-date with 'origin/master'. Changes not staged f
git diff
来查看更改,但根本没有输出任何内容(请参见下面的输出),甚至没有模式更改或任何内容
有人知道为什么git diff
在明显有一些变化的情况下不输出任何东西吗?欢迎所有提示
$ git status
On branch master
Your branch is up-to-date with 'origin/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: src/app/models/VariablePosition.py
no changes added to commit (use "git add" and/or "git commit -a")
$ git diff
$
您的文件仍在工作目录中。在使用git添加文件名后,它将转到临时区域,提交后将包含在git存储库中。 然后只有git会考虑并显示为diff。 还可以尝试使用git diff branchname。
默认情况下,git diff与master进行比较,如果您已经在master上,它将不会显示任何差异,因为它正在与之进行比较。不确定您的问题是否存在,但我在Mac上遇到了这个问题,配置文件是从我的Linux机器复制的 问题似乎出在寻呼机上,因此我查看了较少的环境变量,它似乎是
--quit if one screen
选项的问题,如下所述:
显然,它会转到备用屏幕,当它返回时会丢失输出。答案是在530版本中修复的。(我的Linux机器没有551,而Big Sur上的Mac电脑有487版。)
我从变量中删除了该选项,git diff恢复了活力。@FredericHenri胡说八道,提交后,它将不会显示在git diff中,因为这样您将与刚刚提交的提交进行差异made@Tim,读这个@FredericHenri Tim是正确的,普通
$git diff
将显示工作目录和索引之间的差异。@FredericHenri不确定您对该链接的意思,在提交之前,这是关于差异的seems@bcmcfc将core.filemode
设置为false
和git diff
不会显示仅更改权限更改的文件的更改。您的理论在这里不适用。该文件在git状态下显示为modified,这意味着它已被跟踪
$ git config core.filemode
true