On 20/04/2023 19:10, songbird wrote:
one of the worst design decisions i've come across in
the modern era was the lack of git respecting file metadata.
In the case of git you can get commit time from git log.
Version control systems update modification time on operations like "git
checkout" or "git pull" to allow build systems, relying on timestamp
comparison (make), to recompile changed files even if source tree is
switched to an older version.
Some build systems make decisions based on file hashes, not their
modification times. It may require a daemon watching file changes to
avoid recalculation of all hashes on each build. So such approach is a
kind of trade-off.