我该怎么做呢?通过进行更改后,git config我可以使用 vimdiff 区分我的暂存和提交的更改,但是当我这样做时,git show我仍然会以旧的普通样式看到差异。我如何使这项工作也适用git show?
您可以使用它来git show显示提交等对象(请参阅手册页以供参考)。因此,您不会显示两个文件的差异,而是显示(可能是多个)文件中的更改。所以不存在两个可以比较的文件。但这正是 vimdiff 所做的,它并排打开两个文件并突出显示差异。
当您使用git difftool或类似的东西时,它将为差异的两侧创建文件并使用该工具(在您的情况下为 vimdiff)来比较它们。git show不会创建这些文件,因此 vimdiff 无法显示其输出。
tl;dr:git show是一个显示 git 对象的工具,而不是创建差异的工具,因此它的输出不能使用 vimdiff 显示为差异。
您可能想做的是使用git difftool. 它将为每个修改的文件打开 gvimdiff。
您可以使用常用选项来git diff比较不同的提交。