我进行了一些更改以提交。如何查看为下一次提交准备的所有文件的差异?有一个方便的内衬吗?

gitstatus只显示暂存文件的名称,但我想查看实际的差异。

gitdiff(1)手册页显示:

git diff[--选项][--][…]此表单用于查看相对于索引所做的更改(下一次提交的暂存区域)。换句话说,这些差异是您可以告诉git进一步添加到索引中的,但您仍然没有。您可以使用gitadd(1)暂存这些更改。


当前回答

Emacs中的Magit模式是另一个让这变得简单的工具。它的默认视图列出了暂存和未暂存的更改。它就像类固醇上的git add-p,因为您可以使用编辑器命令轻松地分段或取消分段大块(甚至是单行代码)。了解标准的git瓷器很重要,但我很少再使用git diff缓存。

https://magit.vc/

其他回答

Emacs中的Magit模式是另一个让这变得简单的工具。它的默认视图列出了暂存和未暂存的更改。它就像类固醇上的git add-p,因为您可以使用编辑器命令轻松地分段或取消分段大块(甚至是单行代码)。了解标准的git瓷器很重要,但我很少再使用git diff缓存。

https://magit.vc/

缓存对我不起作用。。。其中,灵感来自git log

gitdifforigin/<branch><branch>完成。

从1.7版及更高版本开始,应为:

git diff --staged

还可以考虑一下gitk工具,它随git一起提供,对查看更改非常有用

应该是:

git diff --cached

--缓存的方法显示缓存/索引中相对于当前HEAD的变化(即阶段性变化)--staged是--cached的同义词。

--staged和--cached并不指向HEAD,只是和HEAD不同。如果您使用git-add--patch(或git-add-p)选择要提交的内容,--staged将返回所提交的内容。