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

Re: fsck objects and timestamp ordering

From
Shawn Pearce <spearce@spearce.org>
Date
Sep 25, 2006, 16:40 UTC
Message-ID
<20060925164004.GB27043@spearce.org>
In-Reply-To
<9e4733910609250932r146fea7alaaf858a18a8b50b0@mail.gmail.com>
Jon Smirl <jonsmirl@gmail.com> wrote:
> When running fsck objects, does it verify that timestamps are ordered
> in the same order as the dependency chains?

No and it can't. Clock skew between systems could be several minutes to several hours which means you may have earlier commits building onto later commits.

The better place to check this (although we don't today) is in git-commit-tree. If the new commit's committer timestamp is older than any of its parent's committer timestamps git-commit-tree should probably at least issue a warning that there's a possible timestamp problem on either this system or the system that created one of those parent commits.

If the committer has a problem with that timestamp issue they could
address it and ammend the commit before the error propagates.
 
> I am having trouble with a CVS repository where the timestamp ordering
> and dependency order are in conflict. It would be best if git didn't
> experience the same problem.

It would be best if Git didn't experience a lot of the weird stuff people were able to do to their CVS repositories. Fortunately the friendly folks on this mailing list have put the better part of a year and a half into doing just that. :)

-- 
Shawn.
Previous: Jon SmirlNext: Shawn Pearce
Message 2 of 5 in “fsck objects and timestamp ordering”
  1. Jon SmirlSep 25, 2006
  2. Shawn PearceSep 25, 2006
  3. Shawn PearceSep 25, 2006
  4. Linus TorvaldsSep 25, 2006
  5. Jon SmirlSep 25, 2006

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.