当我git diff
在我的 OSX 命令行上运行时,输出显示在一个less
或vim
界面内。该界面允许我上下滚动,并使用q键退出。
这很烦人,尤其是当没有 diff 并且 git 打开一个空白屏幕时。
我可以在不进入交互模式的情况下只写屏幕的差异(颜色)输出吗?
当我git diff
在我的 OSX 命令行上运行时,输出显示在一个less
或vim
界面内。该界面允许我上下滚动,并使用q键退出。
这很烦人,尤其是当没有 diff 并且 git 打开一个空白屏幕时。
我可以在不进入交互模式的情况下只写屏幕的差异(颜色)输出吗?
--no-pager
使用该选项禁用交互式寻呼机。
用法:(git --no-pager diff
注意它不是特定于 git-diff 的,所以它可以与任何 git 命令一起使用!)
您还可以使用:
git diff --exit-code
是的。利用:
git diff --color | cat
这--color
是必要的,因为git
如果 stdout 不是 tty(支持颜色),默认情况下不会输出颜色。
我在一些带有 'diff' 和 'grep' 的 Makefile 中使用它:
GIT_PAGER= git diff