From e8c48730b8dfa60937f45f2ffd14bc7266f82d46 Mon Sep 17 00:00:00 2001 From: Pierre Pronchery Date: Thu, 30 Oct 2014 18:07:47 +0100 Subject: [PATCH] Detect force pushes as well --- src/deforaos-git-hook.sh | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/deforaos-git-hook.sh b/src/deforaos-git-hook.sh index dcf34a1..cadeb88 100755 --- a/src/deforaos-git-hook.sh +++ b/src/deforaos-git-hook.sh @@ -125,7 +125,8 @@ _hook_update() else commit_cnt=0 all_files= - revisions=$($GIT rev-list "${oldrev}..${newrev}") + base=$($GIT merge-base "$oldrev" "$newrev") + revisions=$($GIT rev-list "${base}..${newrev}") type=$($GIT cat-file -t "$newrev") log= for revision in $revisions; do @@ -159,6 +160,9 @@ _hook_update() else message="$message in $unique_files_cnt files)" fi + if [ "$oldrev" != "$base" ]; then + message="$message (force push)" + fi echo "$message" if [ $commit_cnt -eq 1 ]; then _link_commit "$repository" "$newrev"