Subject: Re: ambiguous git-log date and timestamp syntax

From: Jakub Narebski <[email-masked]>
Date: Sat, 01 Mar 2008 09:10:39 -0800 (PST)

"Rhodes, Kate" <[email-masked]> writes:

> The docs are a little vague on exactly what your options are when
> specifying dates. If someone can provide me some details on this I'll
> make a patch for the docs.
> 
> --since=date, --after=date
> 	Show commits more recent than a specific date.
> --until=date, --before=date
> 	Show commits older than a specific date.

Those are porcelain (meant for user) options.

> --max-age=timestamp, --min-age=timestamp
> 	Limit the commits output to specified time range.

Those are plumbing (meant for scripts) options.

For example git-rev-parse translates --since into --max-age, etc.

> From what I can tell it seems that dates can be specified relatively,
> e.g. "2 hours ago", or with any ISO 8601 or RFC 2822 date syntax. Is
> this correct, and are there any docs on specifying relative dates?

I don't know why git doesn't use getdate_r for this, instead rolling
out its own date parsing routines: approxidate*, parse_date. From what
I remember it should accept any date "date" (from coreutils) accepts,
but it does (from comments) for date to be in "C" locale.

So I'm sorry, but I cannot help you here...

> I can't find any details on what the "timestamp" format should be. Can
> someone point me in the right direction?

Timestamp is Unix date (epoch), i.e. number of seconds since
1970-01-01 00:00:00 UTC, the format git uses for dates in commit and
tag objects.
 
> -Kate == masukomi
> --
> To unsubscribe from this list: send the line "unsubscribe git" in
> the body of a message to [email-masked]
> More majordomo info at  http://vger.kernel.org/majordomo-info.html
> 

-- 
Jakub Narebski
Poland
ShadeHawk on #git