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

Re: [PATCH] guilt: Make sure the commit time is increasing

From
Jeff King <peff@peff.net>
Date
Jul 6, 2010, 14:29 UTC
Message-ID
<20100706142921.GB6666@sigill.intra.peff.net>
In-Reply-To
<AANLkTinZ4UV9in60Y4myfUWv08Vx3OMvh-_YQl2BXSjC@mail.gmail.com>
On Tue, Jul 06, 2010 at 03:53:56PM +0200, Erik Faye-Lund wrote:
Show 16 quoted lines
> > At one point rev-list did require monotonic --- i.e., the committer
> > date of each commit had to be equal to or later than that of each of
> > its parents) with no clock skew but that was considered a bug and
> > fixed by v1.5.5-rc1~16 (Make revision limiting more robust against
> > occasional bad commit dates, 2008-03-17)
> >
> 
> This might be a stupid question, but I'm not entirely clear on why
> it's not a strict requirement; surely it would be easy to ensure that
> the commit-time is at least as big as the parents when generating the
> commit...?
> 
> Is it to avoid the case where a user commits with the clock set to
> some point (potentially far) in the future, so all subsequent commits
> would have the same, artificially high commit time? Or is there some
> other reason I can't think of?

You can have clock skew between distributed developers. So imagine you commit at 5:00pm, then I pull at 5:01pm, but it turns out your clock is two minutes fast, so it's actually 4:59pm.

What should my commit do? If I insist on monotonic increases, then my clock gets pushed forward artificially by your fast, broken clock (which is probably not the end of the world; in practice, if your clock is N seconds fast, there will presumably be some N second period where I'm not making a commit, and the clocks can "catch up" with each other).

-Peff
Previous: Erik Faye-LundNext: Erik Faye-Lund
Message 14 of 19 in “guilt: Make sure the commit time is increasing”
  1. guilt: Make sure the commit time is increasingTheodore Ts'o, Jul 5, 2010
  2. tytso@mit.eduJul 5, 2010
  3. jeffpc@josefsipek.netJul 5, 2010
  4. jeffpc@josefsipek.netJul 5, 2010
  5. Theodore TsoJul 5, 2010
  6. jeffpc@josefsipek.netJul 5, 2010
  7. tytso@mit.eduJul 5, 2010
  8. Jonathan NiederJul 6, 2010
  9. Theodore TsoJul 6, 2010
  10. Jonathan NiederJul 6, 2010
  11. tytso@mit.eduJul 6, 2010
  12. Jonathan NiederJul 6, 2010
  13. Erik Faye-LundJul 6, 2010
  14. Jeff KingJul 6, 2010
  15. Erik Faye-LundJul 6, 2010
  16. tytso@mit.eduJul 6, 2010
  17. jeffpc@josefsipek.netJul 6, 2010
  18. tytso@mit.eduJul 6, 2010
  19. Josef 'Jeff' SipekJul 14, 2010

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.