gitk 不再显示差异。 (本地更改已签入索引但未提交)

gitk do not show the diff anymore. (Local changes checked in to index but not committed)

我可以使用gitk工具查看当前还没有提交的变更。

但是当我将 git 从 2.29.2.windows.3 更新为 2.33.0.windows.2

差异消失了。只显示

Local changes checked in to index but not committed


我不知道发生了什么。我试图阅读 release note 但找不到答案。


我不确定这是否与以下更改有关

最后一次提交:2020/09/11:gitk: replace tabs tith spaces


我不想使用任何替代工具(比如使用 git gui to view changes); I want gitk 来像以前一样工作。

作为 ,这是当前版本 Git 中的错误,计划在即将发布的版本中修复。

从技术上讲,这个问题与每次使用 --cc 选项的 gitk 有关。这曾经适用于 git diff-index,当索引不处于冲突状态时 --cc 被忽略,而 --cc 在索引 处于冲突状态(即,当您有未解决的合并时)。现在 git diff-index --cc 产生一条错误消息并退出,gitk 认为这意味着没有未暂存的更改。

(git diff-index--cc 选项从未被记录在案,而是被意外删除,而不是被记录在案。这说明了为什么依赖未记录的行为是危险的:你无法判断它是否是有意的。在这种情况下,它可能是,但是改进 git diff 合并处理的人并不知道这一点。)

git 2.33.1 已修复此问题。

Recent "diff -m" changes broke "gitk", which has been corrected.