【问题标题】:Git log does not show anything on consoleGit 日志在控制台上不显示任何内容
【发布时间】:2018-11-02 21:57:19
【问题描述】:

我正在使用 Kubuntu 16.4。 LTS。最近,我使用以下命令更新了我的包:

sudo aptitude update && sudo aptitude upgrade

从那时起,命令git log 不再提供任何输出。

但是,当使用 git log > /tmp/gitlog.txt 时,该文件包含所需的输出。

我怎样才能让git log 恢复工作?

【问题讨论】:

  • 你的 git 版本是什么?
  • echo $PAGERset|grep LESS 的输出是什么?
  • echo $PAGER 显示空行,set | grep LESS 不显示任何内容

标签: git ubuntu konsole


【解决方案1】:

确保您在本地 git 存储库中,并确保您至少有一次提交。

您的文件夹中应包含.git/

git log 在控制台上不显示任何内容,但git log > /tmp/gitlog.txt 将提交写入管道中的文件。

这可能是寻呼机问题,它会阻止控制台上的输出,但在重定向到文件时不适用。
请与git --no-pager log联系。


OP lazyboy 确认 in the comments 与寻呼机相关的问题:

寻呼机的想法帮助我检查我的系统。
一些启动脚本改变了我系统中的 pager 并且对 git 有影响。

【讨论】:

  • git --no-pager 将所有日志条目打印到控制台,如何让git log 与寻呼机一起工作?
  • 不,我只试过git --no-pager。该命令将所有条目打印到控制台。没那么有用:(
  • @lazyboy 你试过git --no-pager log 2> /tmp/gitlog.txt吗(如果该命令使用stderr作为其输出,如stackoverflow.com/a/37771637/6309中所述)
  • 答案并不能直接帮助我让 git 再次工作,但是使用 pager 的想法可以帮助我检查我的系统。一些启动脚本更改了我系统中的寻呼机并影响了 git。
  • @lazyboy 很好发现!我已将您的评论包含在答案中以提高知名度。
【解决方案2】:

我遇到了同样的问题并通过进入我的.gitconfig 文件并从pager 配置中删除diff-highlight 来修复它:

之前(git log/diff/show 不显示任何内容):

[pager]
  log = diff-highlight | less
  show = diff-highlight | less
  diff = diff-highlight | less

之后(一切正常)

[pager]
  log = less
  show = less
  diff = less

没有其他寻呼机配置路径设置或命令标志解决方法。

【讨论】:

    猜你喜欢
    • 2014-01-13
    • 1970-01-01
    • 2022-06-14
    • 1970-01-01
    • 2012-05-30
    • 2019-06-03
    • 2011-04-12
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多