git-restore-mtime man page
git-restore-mtime — Restore original modification time of files based on the date of the most recent commit that modified them
[-h] [--quiet] [--verbose] [--force] [--merge] [--first-parent]
[--skip-missing] [--no-directories] [--test] [--commit-time]
[--work-tree WORKDIR] [--git-dir GITDIR]
Restore original modification time of files based on the date of the most recent commit that modified them. Useful when generating release tarballs.
only modify paths (dirs or files) matching PATHSPEC, relative to current directory. Default is to modify all non-ignored, tracked files.
- -h, --help
show help message and exit
suppress informative messages and summary statistics.
print additional information for each processed file. Overwrites --quiet.
force execution on trees with uncommitted changes.
include merge commits. Leads to more recent mtimes and more files per commit, thus with the same mtime (which may or may not be what you want). Including merge commits may lead to less commits being evaluated (all files are found sooner), which improves performance, sometimes substantially. But since merge commits are usually huge, processing them may also take longer, sometimes substantially. By default merge logs are only used for files missing from regular commit logs.
pass --first-parent to git whatchanged to hide the second parent from the merge commit logs. Only has any effect if --merge is also specified or --skip-missing is not specified and there were files not found in regular commit logs.
do not try to find missing files. If some files were not found in regular commit logs, by default it retries using merge commit logs for these files (if --merge was not used already). This option disables this behavior, which may slightly improve performance, but files found only in merge commits will not be updated.
do not update directory mtime for files created, renamed or deleted in it. Note: just modifying a file will not update its directory mtime.
test run: do not actually update any file
use commit time instead of author time
- --work-tree WORKDIR
specify where the work tree is. Default for most repositories is current directory.
- --git-dir GITDIR
specify where the git repository is. Default for most repositories <work-tree>/.git
Rodrigo Silva (MestreLion) email@example.com