By using the same author and committer date, it keeps the git commit id's stable if the patches haven't changed. Otherwise, repeated invocations of "guilt pop -a; guilt push -a" will create new commit's with different commit dates, creating a lot of garbage commits that won't disappear for a LONG time, even after running "git-gc --prune", thanks to the reflog in git 1.5. Signed-off-by: Theodore Ts'o <tytso@xxxxxxx> --- guilt | 14 ++++++++++++++ 1 files changed, 14 insertions(+), 0 deletions(-) diff --git a/guilt b/guilt index ced441b..7cb52c4 100755 --- a/guilt +++ b/guilt @@ -248,6 +248,10 @@ function push_patch export GIT_AUTHOR_NAME GIT_AUTHOR_EMAIL fi + local backup_author_date="$GIT_AUTHOR_DATE" + local backup_committer_date="$GIT_COMMITTER_DATE" + export GIT_AUTHOR_DATE=`stat -c %y $p` + export GIT_COMMITTER_DATE=$GIT_AUTHOR_DATE # commit local treeish=`git-write-tree` @@ -271,6 +275,16 @@ function push_patch unset GIT_AUTHOR_EMAIL fi fi + if [ ! -z "$backup_author_date" ]; then + export GIT_AUTHOR_DATE="$backup_author_date" + else + unset GIT_AUTHOR_DATE + fi + if [ ! -z "$backup_committer_date" ]; then + export GIT_COMMITTER_DATE="$backup_committer_date" + else + unset GIT_COMMITTER_DATE + fi rm -f /tmp/guilt.msg.$$ /tmp/guilt.log.$$ -- 1.5.0.rc4.2.g4249 - To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html