Macos Git log--pretty=oneline似乎忽略了前2次提交

Macos Git log--pretty=oneline似乎忽略了前2次提交,macos,git,Macos,Git,这可能是一个bug,但我以前从未在Git中看到过bug,而且我在Intertube上找不到任何关于这个问题的提及,所以现在我假设用户是愚蠢的 我经常使用Git,所以我设置了一个别名来显示Git日志的鸟瞰视图:alias gl='Git log--pretty=oneline--abbrev commit'。因此,当我在不同的分支之间玩杂耍时,我会经常键入gl来调出日志,然后q退出。我觉得这非常方便 但是今天我注意到了一些奇怪的事情:看起来最近的两次提交被排除在这个视图之外。以下是我的一个活动项目

这可能是一个bug,但我以前从未在Git中看到过bug,而且我在Intertube上找不到任何关于这个问题的提及,所以现在我假设用户是愚蠢的

我经常使用Git,所以我设置了一个别名来显示Git日志的鸟瞰视图:
alias gl='Git log--pretty=oneline--abbrev commit'
。因此,当我在不同的分支之间玩杂耍时,我会经常键入
gl
来调出日志,然后
q
退出。我觉得这非常方便

但是今天我注意到了一些奇怪的事情:看起来最近的两次提交被排除在这个视图之外。以下是我的一个活动项目的
gl
输出示例:

b6e802d Location autocomplete; major refactoring and cleanup
d0cecdf Admin can download CSV of all users
0149ea2 Changed some verbiage on terms, privacy and profile page
5c0bdff Changed the link for find coach to go to the coaches page
但是,如果我将gl输出到类似于
gl>gitlog.txt的文件中,则前几行是:

5e57f97 City autocomplete supported in mobile navbar search
df43a02 Add firstname & lastname to admin's users CSV download
b6e802d Location autocomplete; major refactoring and cleanup
d0cecdf Admin can download CSV of all users
0149ea2 Changed some verbiage on terms, privacy and profile page
5c0bdff Changed the link for find coach to go to the coaches page
请注意,后者中的前2行在前者中不存在

如果我打开正常的
git日志
,所有提交都会如预期的那样可见

编辑:我刚刚发现我现在可以通过管道(我认为是冗余的)来解决这个问题:
gl | less
按预期显示所有提交

我以前从未注意到这种情况(即过去几周);我最近更新了一个较新的Git版本,这有关系吗?还有谁见过这种情况吗?我该怎么做才能弄清楚这里发生了什么?我甚至不知道从哪里开始。这看起来像虫子吗

编号:

  • Mac OSX 10.9.5
  • Git 2.2.1
  • 还有其他相关数字吗

谢谢你的阅读

这不是一个完整的答案,但我只是做了一些观察:

  • 这只发生在一个特定的存储库中。git日志在其他项目上运行良好
  • 在过去一两天里,我又添加了几个提交,所有这些提交都被排除在外。因此,并不是最近的两次提交被隐藏得太多,而是在某次提交之后的每一次提交都被排除
隐藏的最早提交从以下行开始:

Add firstname & lastname to admin's users CSV download

考虑到错误的行为,我认为Git的日志打印输出中有一个bug,如果提交消息包含
&
,就会导致一些提交被隐藏。因此,我现在学到的教训是不要在Git提交消息中使用
&

只是在一个旧的Git版本(2.6.x)中重现了这种行为,但我更新了它(2.19.1),然后它被修复了