小智 226
或者,如果您使用less作为默认寻呼机,只需-S在查看差异时键入以重新启用包装.
Spo*_*ser 115
输出的显示git diff由您正在使用的任何寻呼机处理.
通常,在Linux下,less将使用.
你可以通过设置GIT_PAGER环境变量告诉git使用不同的寻呼机.如果您不介意分页(例如,您的终端允许您向后滚动),您可以尝试显式设置GIT_PAGER为空以使用寻呼机来停止它.在Linux下:
$ GIT_PAGER='' git diff
Run Code Online (Sandbox Code Playgroud)
如果没有寻呼机,线条将会换行.
如果您的终端不支持彩色输出,您也可以使用--no-color参数关闭它,或在git配置文件的颜色部分放置一个条目.
$ GIT_PAGER='' git diff --no-color
Run Code Online (Sandbox Code Playgroud)
Sho*_*oan 115
您还可以使用git config设置寻呼机进行换行.
$ git config core.pager 'less -r'
Run Code Online (Sandbox Code Playgroud)
设置当前项目的寻呼机设置.
$ git config --global core.pager 'less -r'
Run Code Online (Sandbox Code Playgroud)
为所有项目全局设置寻呼机
lin*_*des 42
Josh Diehl在对这个答案的评论中给予了充分的信任,但我觉得这应该是一个自己的答案,所以补充一下:
处理长线差异的一种方法是使用面向字的差异.这可以通过以下方式完成:
git diff --word-diff
Run Code Online (Sandbox Code Playgroud)
在这种情况下,您将获得一个显着不同的差异输出,它会明确显示一行中已更改的内容.
例如,而不是得到这样的东西:
diff --git a/test-file.txt b/test-file.txt
index 19e6adf..eb6bb81 100644
--- a/test-file.txt
+++ b/test-file.txt
@@ -1 +1 @@
-this is a short line
+this is a slightly longer line
Run Code Online (Sandbox Code Playgroud)
你可能得到这样的东西:
diff --git a/test-file.txt b/test-file.txt
index 19e6adf..eb6bb81 100644
--- a/test-file.txt
+++ b/test-file.txt
@@ -1 +1 @@
this is a [-short-]{+slightly longer+} line
Run Code Online (Sandbox Code Playgroud)
或者,使用着色,而不是:

你可能会得到这个:

现在,如果你要比较一个非常长的行,你可能仍然会遇到你最初描述的寻呼机情况的问题,并且在其他答案中已经解决了,显然是满意的.希望这会为您提供一个新工具,以便更轻松地识别线路上的变化.
小智 29
要使用less作为寻呼机并使换行永久化,您只需启用fold-long-lines选项:
git config --global core.pager 'less -+S'
Run Code Online (Sandbox Code Playgroud)
这样您就不必在使用less时键入它.
干杯
sin*_*ish 19
只是用Google搜索了这个. GIT_PAGER='less -r'适合我
Joh*_*ger 19
Mac OSX:没有其他答案,除了某人45的'-S',而较少的运行对我有用.它采用以下方法使word-wrap持久化:
git config --global core.pager 'less -+$LESS -FRX'
Run Code Online (Sandbox Code Playgroud)
小智 10
自Git 1.5.3(2007年9月)
一个--no-pager选项已经可用.
git --no-pager diff
Run Code Online (Sandbox Code Playgroud)
从v2.1开始,wrap是默认值
直到现在还没有人指出这一点。它很容易记住,不需要在 git config 中进行额外的配置
git diff --color | less -R
Run Code Online (Sandbox Code Playgroud)
八年后,我找到了一个更好的答案,来自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`
Run Code Online (Sandbox Code Playgroud)
现在你通过fold管道git diff,首先,然后更少:包装,更少的页面高度是正确的,保持语法高亮.
| 归档时间: |
|
| 查看次数: |
42480 次 |
| 最近记录: |