[X2Go-Commits] [maintenancescripts] 03/03: git/hooks/update-irkerhook_only: make merge- and rebase-aware. Don't flood the channel.

git-admin at x2go.org git-admin at x2go.org
Mon May 4 00:48:56 CEST 2015


This is an automated email from the git hooks/post-receive script.

x2go pushed a commit to branch master
in repository maintenancescripts.

commit 289c63ccd0c49997c80c55b2c462fe4255338ea7
Author: Mihai Moldovan <ionic at ionic.de>
Date:   Mon May 4 00:48:07 2015 +0200

    git/hooks/update-irkerhook_only: make merge- and rebase-aware. Don't flood the channel.
---
 git/hooks/update-irkerhook_only |   30 +++++++++++++++++++++++++++---
 1 file changed, 27 insertions(+), 3 deletions(-)

diff --git a/git/hooks/update-irkerhook_only b/git/hooks/update-irkerhook_only
index 57c3a95..e948471 100755
--- a/git/hooks/update-irkerhook_only
+++ b/git/hooks/update-irkerhook_only
@@ -9,6 +9,30 @@ REFNAME="${1}"
 OLD="${2}"
 NEW="${3}"
 
-git rev-list --reverse "${OLD}..${NEW}" | while read cur_rev; do
-  "${GIT_DIR}/${OUTSIDE_REPO}/_hooks_/update-script._irkerhook.py_" --refname="${REFNAME}" "${cur_rev}" --repo="${SHORT_GIT_REPO_NAME}" || :
-done
+typeset -i merge="0"
+typeset -i ff="0"
+
+if [ -z "$(git rev-list --merges "${OLD}..${NEW}")" ]; then
+  merge="0"
+else
+  merge="1"
+fi
+
+typeset merge_base="$(git merge-base "${OLD}" "${NEW}")"
+if [ "${merge_base}" = "${OLD}" ]; then
+  ff="1"
+else
+  ff="0"
+fi
+
+if [ "${ff}" -eq "1" ] && [ "${merge}" -eq "0" ]; then
+  git rev-list --reverse "${OLD}..${NEW}" | while read cur_rev; do
+    "${GIT_DIR}/${OUTSIDE_REPO}/_hooks_/update-script._irkerhook.py_" --refname="${REFNAME}" "${cur_rev}" --repo="${SHORT_GIT_REPO_NAME}" || :
+  done
+elif [ "${merge}" -eq "1" ]; then
+  git rev-list --reverses "${NEW}^..${NEW}" | while read cur_rev; do
+    "${GIT_DIR}/${OUTSIDE_REPO}/_hooks_/update-script._irkerhook.py_" --refname="${REFNAME}" "${cur_rev}" --repo="${SHORT_GIT_REPO_NAME}" || :
+  done
+elif [ "${ff}" -eq "0" ]; then
+  "${GIT_DIR}/${OUTSIDE_REPO}/_hooks_/update-script._irkerhook.py_" --refname="${REFNAME}" --rebase="${OLD}" "${NEW}" --repo="${SHORT_GIT_REPO_NAME}" || :
+fi

--
Alioth's /srv/git/code.x2go.org/maintenancescripts.git//..//_hooks_/post-receive-email on /srv/git/code.x2go.org/maintenancescripts.git


More information about the x2go-commits mailing list