Subject: Re: git log decipher

From: Jakub Narebski <[email-masked]>
Date: Thu, 21 Jul 2011 04:41:50 -0700 (PDT)

gbhumphrey <[email-masked]> writes:

> Hi so in the .git/logs/refs/heads there are log files, i'm tryign to decipher
> the timestamp, at least I think it's a time stamp. An entry looks like this:
> a391d7a96af8c06a626eec23565ceccef81bc350
> fdfb6d8c87521d56d8a6034e8575304013ecdd6c Greg Humphrey &lt;[email-masked]&gt;
> 1307594233 -0700	merge US199: Merge made by recursive.
> 
> The "1307594233 -0700" seems to be a timestamp, but I'm not sure what
> format, anyone have any ideas how to convert to a human readable?

If you want to *view* this information, why not use "git reflog" or
"git log -g" instead of reading raw files?

If you want to *parse* this information:
 - "1307594233" is Unix epoch, i.e. number of seconds since
   '00:00:00 1970-01-01 UTC'; it is independent on timezone
 - "-0700" is RFC-2822 style numeric timezone; informational

From RFC-2822 (http://tools.ietf.org/html/rfc2822#section-3.3)

   The zone specifies the offset from Coordinated Universal Time (UTC,
   formerly referred to as "Greenwich Mean Time") that the date and
   time-of-day represent.  The "+" or "-" indicates whether the
   time-of-day is ahead of (i.e., east of) or behind (i.e., west of)
   Universal Time.  The first two digits indicate the number of hours
   difference from Universal Time, and the last two digits indicate the
   number of minutes difference from Universal Time.  (Hence, +hhmm
   means +(hh * 60 + mm) minutes, and -hhmm means -(hh * 60 + mm)
   minutes).  The form "+0000" SHOULD be used to indicate a time zone at
   Universal Time.  Though "-0000" also indicates Universal Time, it is
   used to indicate that the time was generated on a system that may be
   in a local time zone other than Universal Time and therefore
   indicates that the date-time contains no information about the local
   time zone.

-- 
Jakub Narębski