Create
cancel
Showing results for 
Search instead for 
Did you mean: 
Sign up Log in

How to lock a time stamp using git

Hemanti Nag September 26, 2020

My system fails because of timestamps has been changed. How to to allow Git to lockthe timestamp?

1 answer

1 accepted

4 votes
Answer accepted
Soumyadeep Mandal
Rising Star
Rising Star
Rising Stars are recognized for providing high-quality answers to other users. Rising Stars receive a certificate of achievement and are on the path to becoming Community Leaders.
September 26, 2020

Hi @Hemanti Nag ,

Welcome to the community!

What you've stumbled across is one of the fundamental design principles of version control systems. Both Git and Mercurial track content. That is, they only track the file's contents (which is verified by using the SHA-1 of the file). The timestamp of a file is inherently a local attribute. Imagine you move a file from one location to /tmp, then you move it back. The file's contents remain unchanged but its timestamp will be whenever you moved it back.

So, asking to keep file attributes is just not possible with either Git nor Mercurial:

https://git.wiki.kernel.org/index.php/Git_FAQ#Why_isn.27t_Git_preserving_modification_time_on_files.3F

The communities of each version control system will undoubtedly tell you that your build system will need to be changed to accommodate for this. Build systems like bazel.io are fast and popular solutions, which may work better for you. Furthermore, changing the tools now would break existing build systems including the Linux kernel itself. The topic comes up occasionally, as seen here:

https://selenic.com/pipermail/mercurial/2015-August/048617.html

where the project leader himself explains why that's a bad idea.

Hemanti Nag September 26, 2020

Ok. Thanks

Like Soumyadeep Mandal likes this

Suggest an answer

Log in or Sign up to answer
TAGS
AUG Leaders

Atlassian Community Events