Alexander Bird Alexander Bird - 16 days ago 9
Git Question

git log: only show yesterday's commit

git log --since=yesterday --until=today
doesn't work because it will include today's commits.

git log --since=yesterday --until=yesterday
doesn't work because it will not show anything at all.

I'm assuming that "yesterday" translates to 12:01am of the previous date, and "today" translates to the current hour. That can make sense to some degree, but it is very unhelpful for me right now.

I also want this to be in a script. So I can't hardcode the dates/times. Is the only option really to programmatically calculate yesterday's date and manually pass the hour as well?

EDIT:

I noticed the following. In the source code for the most recent version of git, it appears that "yesterday" (see code here) means 24*60*60 seconds before the current time. So depending on how precise you need to be, that could matter. Right above that line in the code you see that "today" does mean right now

Pak Pak
Answer

You don't have to compute the date :

git log --since=yesterday --before=0am

However, be careful of what git exactly considers to be the start of the day. Little demonstration :

git log --since=yesterday --before=0am | grep Date:
Date:   Wed Jul 2 18:01:28 2014 +0200
Date:   Wed Jul 2 17:59:39 2014 +0200
Date:   Wed Jul 2 17:59:22 2014 +0200
Date:   Wed Jul 2 17:02:37 2014 +0200
Date:   Wed Jul 2 16:53:52 2014 +0200

git log  | grep Date:
Date:   Wed Jul 2 18:01:28 2014 +0200
Date:   Wed Jul 2 17:59:39 2014 +0200
Date:   Wed Jul 2 17:59:22 2014 +0200
Date:   Wed Jul 2 17:02:37 2014 +0200
Date:   Wed Jul 2 16:53:52 2014 +0200
Date:   Wed Jul 2 16:02:49 2014 +0200
Date:   Wed Jul 2 15:41:15 2014 +0200
Date:   Wed Jul 2 15:16:47 2014 +0200
Date:   Wed Jul 2 14:34:15 2014 +0200
Date:   Wed Jul 2 10:48:25 2014 +0200
Date:   Wed Jul 2 10:44:59 2014 +0200

So apparently the day starts at around 4:30pm at my place! Coincidence? I think not. It is currently 4:30, so as AlexanderBird pointed out, yesterday is 24 hours before the current time in git source code.