如何配置git diff,使长线不会缠绕?
有时我在git repo中有一长行代码(例如json配置文件),而如何配置git diff,使长线不会缠绕?,git,diff,git-diff,Git,Diff,Git Diff,有时我在git repo中有一长行代码(例如json配置文件),而git diff将生成如下输出 在EC2实例上,Igit diff不会将内容包装到下一行,生成以下输出(我可以使用左/右键导航),这是我个人更喜欢的 有人知道我如何配置git diff以从一种行为更改为另一种行为吗?包装行的是您的终端或寻呼机程序,而不是git diff。尝试将git diff的输出重定向到一个文件中,并使用允许控制换行的编辑器打开它-您将看到这些行实际上没有换行 您可以尝试以下方法: git diff|cut
git diff
将生成如下输出
在EC2实例上,Igit diff
不会将内容包装到下一行,生成以下输出(我可以使用左/右键导航),这是我个人更喜欢的
有人知道我如何配置git diff以从一种行为更改为另一种行为吗?包装行的是您的终端或寻呼机程序,而不是git diff。尝试将
git diff
的输出重定向到一个文件中,并使用允许控制换行的编辑器打开它-您将看到这些行实际上没有换行
您可以尝试以下方法:
git diff|cut -c -$COLUMNS
但是请注意,它将禁用颜色和分页。感谢上面torek的内联响应。基于此,我意识到我可以做
git diff | less-S
来实现我想要的。它比cut-c-$COLUMNS
解决方案更好,因为它不会丢失任何上下文(我仍然可以使用左键和右键查看所有差异)。如果使用less
作为寻呼机,请设置-S
选项。(我喜欢将S看作是横向滚动的)(Git中的默认值很复杂:请参阅。请注意,设置S
可能会对F
产生一些干扰:如果寻呼机是vi
或vim
,则您可以通过执行git diff | vi-
或git diff | vim-
来获得与less
相同的结果。将--color
传递给git diff将再次强制使用颜色,但在实际到达“$COLUMNS”之前,行明显缩短,行中每个ANSI颜色字符对应一个字符。