Git diff:输出并退出而不是交互模式

43
当我在我的OSX命令行上运行git diff时,输出会显示在一个lessvim界面中。该界面允许我向上或向下滚动,并使用q键退出。
这非常令人恼火,特别是当没有差异时,git会打开一个空白屏幕。
我是否可以直接将差异(颜色)输出到屏幕上而不进入交互模式?

3
可能是重复问题:如何防止git diff使用分页器? - Joseph Quinsey
1
抱歉,这确实是一个重复的问题。谢谢! - Adam Matan
1
可能是如何防止git diff使用分页器?的重复问题。 - Dyno Fu
4个回答

45

16

您还可以使用以下方式:

git diff --exit-code

+1 有没有一种方法可以将此配置为“git diff”的标准行为? - Adam Matan

7

是的。使用:

git diff --color | cat

由于默认情况下,如果stdout不是tty(支持颜色),git将不输出颜色,因此--color是必需的。


4
我在一些Makefiles中使用这个命令与'diff'和'grep'搭配使用:
GIT_PAGER= git diff

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接