git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: unable to pull from remote if commit date is in the future

From
Jeff King <peff@peff.net>
Date
Jun 20, 2016, 19:46 UTC
Message-ID
<20160620194648.GB3631@sigill.intra.peff.net>
In-Reply-To
<20160620193928.GA3631@sigill.intra.peff.net>
On Mon, Jun 20, 2016 at 03:39:28PM -0400, Jeff King wrote:
Show 20 quoted lines
> On Mon, Jun 20, 2016 at 12:05:07PM -0700, Norbert Kiesel wrote:
> 
> > Hmm.  On closer inspection that commit 23c07cc that github shows with
> > date 2152-06-19 is already in my local branch.  I got confused because
> > locally it is shown with a different date: `git log -1 --format='%ci'
> > 23c07cc` shows "2106-02-07 06:28:56 -40643156" which is invalid.
> > 
> > My system is running Debian unstable 64bit.  Is git using the time
> > rendering methods from the C library (glibc 2.22-12)?
> 
> No, git's time code is (mostly) internal routines. Can you show us the
> output of:
> 
>     git cat-file commit 23c07cc | egrep '^author|committer'
> 
> Note also that some interfaces (like "git log", and GitHub) will show
> the author date by default, which might be different than the committer
> date. The "-40643156" timezone definitely looks suspicious, though. I'm
> curious if it is bad handling in the time code, or if the commit has
> corrupt ident lines.

Actually, I just noticed in your earlier message a link to the public GitHub repository.

So to answer my own questions:
  $ git cat-file commit 23c07cc | egrep '^author|committer'
  author Sean D'Epagnier <seandepagnier@gmail.com> 5758122296 -40643156
  committer Sean D'Epagnier <seandepagnier@gmail.com> 5758122296 -40643156

Yes, the timezone really is that ridiculous value. No, the author and committer aren't different. According to GNU date, the correct timestamp is actually in 2152. Offhand, I'd guess that the timestamp exceeding 2^32 is getting converted somewhere inside git to a bogus value, and that's how we end up with 2106.

-Peff
Previous: Norbert KieselNext: Jeff King
Message 6 of 10 in “unable to pull from remote if commit date is in the future”
  1. Norbert KieselJun 20, 2016
  2. Stefan BellerJun 20, 2016
  3. Norbert KieselJun 20, 2016
  4. Jeff KingJun 20, 2016
  5. Norbert KieselJun 20, 2016
  6. Jeff KingJun 20, 2016
  7. Jeff KingJun 20, 2016
  8. Eric DeplagneJun 20, 2016
  9. Jeff KingJun 20, 2016
  10. Andreas SchwabJun 20, 2016

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.