git:如何显示自“上一次是凌晨5点”以来的提交

时间:2017-04-10 23:07:01

标签: git git-log

我正在尝试创建一个别名,在使用时会显示自上午5点以来的所有提交。首先,我发现this Stack Overflow answer让我走得这么远:

git log --since="5am"

一开始似乎正是我需要的,除了在使用它一段时间之后,我注意到如果我在05:0023:59之间的任何时间执行它,我会得到所有自上午5点以来在同一天提交的提交按预期进行,但是如果我在00:0004:59之间的任何时间执行它,我都不会得到任何提交,甚至是我在12之后提交的提交AM。

所以我想使用像--since这样的时间就等于“给我今天和凌晨5点之后所做的所有提交”。我想要的更像是“给我自上次凌晨5点以来提交的所有提交,无论是今天还是昨天”。例如,如果今天我在上午9点做出提交,我希望能够在结果中看到它在当天的剩余时间,但也可以在明天的上午12点到凌晨5点。

有没有办法实现这个目标?

谢谢:)

1 个答案:

答案 0 :(得分:1)

我认为你可以通过测试since参数中的当前时间来处理这个问题。像这样的东西可能会奏效。 (假设有一个bash shell。)

git log --since="5am$(if test $(date +%k) -lt 5; then echo ' yesterday'; fi)"