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

Re: Back-dating commits--way back--for constitution.git

From
JJJoshua Juran <jjuran@gmail.com>
Date
Aug 3, 2010, 09:32 UTC
Message-ID
<FF986C58-37A5-41ED-B2AF-1EA4C045B9F7@gmail.com>
In-Reply-To
<4C57D997.5010003@drmicha.warpmail.net>
On Aug 3, 2010, at 1:55 AM, Michael J Gruber wrote:
Show 9 quoted lines
> Jakub Narebski venit, vidit, dixit 02.08.2010 23:48:
>
>> The headers inside commit (and tag) objects are stored in text form,
>> so they are not limited to 32-bit value.  You would have to use  
>> system
>> that has 64-bit time_t, or patch git.
>>
>> 64-bit time_t would be enough for everyone (sic!).
>
Show 9 quoted lines
> time_t is signed on most systems. Using unsigned long buys us a few
> years as long as we don't go through any system routine nor conversion
> to time_t. So maybe we should:
>
> - check to make sure we use time_t and system routines only when  
> getting
> the current time
> - use signed long long as our git_time_t (I think long is less system
> dependent then long but I could be wrong)

Obviously you mean "I think long long is less system dependent than long".

Does any system exist where long long is not 64 bits? In any case, you can future-proof it by spelling it "int64_t". That symbol is not guaranteed to exist (nor is <stdint.h>), but neither is the long long type in the first place.

> - make our own algorithms work for the extended format

This would enable systems with 32-bit time_t to deal with pre-1901 commit timestamps in Git.[1] Hopefully such systems will become increasingly rare.

Josh
[1] Or post-2038 timestamps, but any use case for such is dubious.
Previous: Michael J GruberNext: Jeff King
Message 26 of 36 in “Back-dating commits--way back--for constitution.git”
  1. Joel C. SalomonAug 2, 2010
  2. Shawn O. PearceAug 2, 2010
  3. Joel C. SalomonAug 2, 2010
  4. Ævar Arnfjörð BjarmasonAug 2, 2010
  5. Joel C. SalomonAug 4, 2010
  6. Ævar Arnfjörð BjarmasonAug 4, 2010
  7. Joel C. SalomonAug 5, 2010
  8. Ævar Arnfjörð BjarmasonAug 5, 2010
  9. Sverre RabbelierAug 5, 2010
  10. Jakub NarebskiAug 6, 2010
  11. Michael WittenAug 6, 2010
  12. Sverre RabbelierAug 6, 2010
  13. Joel C. SalomonAug 6, 2010
  14. Ævar Arnfjörð BjarmasonAug 6, 2010
  15. Joel C. SalomonAug 6, 2010
  16. Brandon CaseyAug 6, 2010
  17. Ævar Arnfjörð BjarmasonAug 6, 2010
  18. Brandon CaseyAug 6, 2010
  19. Joel C. SalomonAug 8, 2010
  20. Joshua JuranAug 8, 2010
  21. Jakub NarebskiAug 2, 2010
  22. Junio C HamanoAug 2, 2010
  23. Jakub NarebskiAug 3, 2010
  24. Jakub NarebskiAug 3, 2010
  25. Michael J GruberAug 3, 2010
  26. Joshua JuranAug 3, 2010
  27. Jeff KingAug 3, 2010
  28. Joshua JuranAug 3, 2010
  29. Jeff KingAug 3, 2010
  30. Jakub NarebskiAug 3, 2010
  31. Jakub NarebskiAug 3, 2010
  32. Jeff KingAug 3, 2010
  33. Jakub NarebskiAug 3, 2010
  34. Jeff KingAug 3, 2010
  35. Michael J GruberAug 3, 2010
  36. Jeff KingAug 3, 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.