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

时间:2014-02-20 07:50:32

标签: macos git diff interactive-mode

当我在OSX命令行上运行git diff时,输出显示在lessvim界面内。界面让我可以向上和向下滚动,并使用 q 键退出。

这非常烦人,尤其是当没有差异时,git会打开一个空白屏幕。

我可以在不进入交互模式的情况下在屏幕上编写diff(颜色)输出吗?

4 个答案:

答案 0 :(得分:13)

您也可以使用:

git diff --exit-code

答案 1 :(得分:9)

使用--no-pager选项禁用交互式寻呼机。

用法:git --no-pager diff(注意它不是特定于git-diff的,所以它可用于任何git命令!)

文档:https://git-scm.com/docs/git

https://stackoverflow.com/a/2183920/2221472

复制

答案 2 :(得分:5)

是。使用:

git diff --color | cat

--color是必要的,因为如果stdout不是tty(有颜色支持),默认情况下git将不会输出颜色。

答案 3 :(得分:3)

我在'diff'和'grep'的一些Makefile中使用它:

GIT_PAGER= git diff