git-restore-mtime (2017.10-1+slashproc8+1)
- set timestamps to the date of a file's last commit
Binary for arch all (15.5 KB)
Binary for arch all (15.5 KB)
This utility can set timestamps in a git checkout to the last commit that changes a given file. This is useful whenever meaningful mtimes are wanted, as "last change" is better than "last checkout". Use cases include syncing timestamps on a web server's contents, preparing a release tarball, etc. Pretty much, every scenario other than an unclean source tree where you're about to type "make" without "make clean".
When called from a .git/hooks/post-checkout trigger, this is the equivalent of Subversion's "use-commit-times".
Unlike metastore, git restore-mtime gives you only commit times rather than the true original timestamp; on the other hand it works retroactively and doesn't require a manual action by every contributor in every working copy.
This package includes three other utilities: * git clone-subset - clones only some files from a repository (inc. history) * git find-uncommitted-repos - recursively searches for unclean git repos * git strip-merge - filters away some files during a merge