我在一个文件上运行git-diff,但是更改位于一个长行的末尾。
如果我使用光标键向右移动,它就失去了颜色编码——更糟糕的是,线条没有对齐——这使得跟踪变化变得更加困难。
有没有办法防止这个问题,或者简单地让行换行?
我通过mingw32运行Git 1.5.5。
我在一个文件上运行git-diff,但是更改位于一个长行的末尾。
如果我使用光标键向右移动,它就失去了颜色编码——更糟糕的是,线条没有对齐——这使得跟踪变化变得更加困难。
有没有办法防止这个问题,或者简单地让行换行?
我通过mingw32运行Git 1.5.5。
当前回答
列出当前/默认配置:
$ git config --global core.pager
less -FXRS -x2
然后更新并去掉-S,比如:
$ git config --global core.pager 'less -FXR -x2'
-S:使比屏幕宽度长的行被剪切而不是折叠。
其他回答
我在谷歌上搜了一下。GIT_PAGER='less -r'适合我
Mac OSX:除了某人45的“-S”而“less”是“running”之外,其他的答案都不适合我。要使换行持久,需要执行以下操作:
git config --global core.pager 'less -+$LESS -FRX'
八年后,我从https://superuser.com/questions/777617/line-wrapping-less-in-os-x-specifically-for-use-with-git-diff:上找到了一个更好的答案
git config core.pager `fold -w 80 | less`
现在你通过fold管道git差异,首先,然后less: wrapped, less page-height是正确的,保持语法高亮显示。
git diff输出的显示由您正在使用的分页器处理。
通常,在Linux下,使用较少。
您可以通过设置GIT_PAGER环境变量告诉git使用不同的分页器。如果您不介意分页(例如,您的终端允许您回滚),您可以尝试显式地将GIT_PAGER设置为空以停止使用分页器。在Linux下:
$ GIT_PAGER='' git diff
如果没有寻呼机,行就会自动换行。
如果你的终端不支持彩色输出,你也可以使用——no-color参数关闭它,或者在你的git配置文件的color部分中放入一个条目。
$ GIT_PAGER='' git diff --no-color
你也可以使用git配置来设置分页器来进行包装。
$ git config core.pager 'less -r'
设置当前项目的寻呼机设置。
$ git config --global core.pager 'less -r'
为所有项目全局设置寻呼机