繁体   English   中英

相同分支之间的Git diff返回奇怪的输出

[英]Git diff between identical branches returning strange output

当我git diff 2相同的分支,甚至同一分支时,我得到以下输出:

lines ?-?/? (END)

我不确定此消息的意义是什么或如何解决。 到目前为止,我一直都忽略它,但我希望它不出现。 是什么原因造成的,我该如何解决?

git diff默认使用less作为分页器。 通常,在按q之前,很少会保持打开状态。 如果没有什么可显示的,它将默认为您看到的输出,直到退出为止。

从更少的手册页:

-F或--quit-if-one-screen

如果可以在第一个屏幕上显示整个文件,则导致更少的自动退出。

如果在命令行选项中添加-F lessgit diff仅在未显示更改的情况下才返回shell提示。 有两种方法可以做到这一点:

  1. -F添加到LESS环境变量

    • 如果使用bash,可以通过添加export LESS="-F"或在参数列表中添加-F (如果此行已存在)来修改~/.bashrc~/.bash_profile
    • 您可以创建一个less.sh文件,并使用相同的内容将其放置在/etc/profile.d/中(`export LESS =“-F”)
  2. 您可以对命令添加选项的命令减去别名:

    • 为您的~/.bashrc~/.bash_profile添加alias less='less -F'
    • 此方法可能会或可能不会直接与git diff (未测试)

并不完全相关,但仍然相关:如果要在-LESS选项中添加-F ,我还建议添加-R -X -I 您可以在较少的手册页中阅读有关它们的信息,但足以说它们的功能却不那么出色。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM