Git 日志范围修订包括范围边缘

Git log range revision including the range edges

我知道很多 Q/A 都解决了这类问题,我已经研究过它们,但实际上我没有找到获得我想要的东西的方法。

我正在寻找两个哈希之间的 git 日志,包括范围内使用的哈希日志。

通过查看文档和 SO 中的其他 Q/A,我发现可以通过这种方式实现:

git log oldest...Newest

但这并不return排除最旧的日志。

例如在这个 repo https://github.com/galniv/jira-git-helper/commits/master

我想要 52209d3738f80e49c724502503d6a72c1e24e6bc 之间的日志(最旧的)和 5456f8cecc5ef5cef5abc1f820a4f044e2153734 之间的日志(最新的)。

git log 52209d3738f80e49c724502503d6a72c1e24e6bc...5456f8cecc5ef5cef5abc1f820a4f044e2153734 return 的结果只有两个日志而不是 3 个:

commit 5456f8cecc5ef5cef5abc1f820a4f044e2153734
Author: Gal Niv <gal.niv@gmail.com>
Date:   Tue Mar 21 15:33:55 2017 -0400

    Update README.md

commit a4c184ecc7fb4c50705c0ac90c94752a31ce7251
Author: Gal Niv <gal.niv@gmail.com>
Date:   Tue Mar 21 11:48:30 2017 -0400

    Remove console.log, display current branch name

如何包含最早哈希的日志?

如果不涉及合并提交,我会使用 ~:

git log old-rev~1..new-rev

应该够了。