summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLibravatar Junio C Hamano <junkio@cox.net>2005-11-03 01:51:25 -0800
committerLibravatar Junio C Hamano <junkio@cox.net>2005-11-03 14:55:11 -0800
commit160252f81626d865b9e902abffe5e4976944c930 (patch)
tree667f2453733fbb2f12fdaef832639c51132a01fc
parentAdd 'ours' merge strategy. (diff)
downloadtgif-160252f81626d865b9e902abffe5e4976944c930.tar.xz
git-merge-ours: make sure our index matches HEAD
git-merge expects this check to be done appropriately by the merge strategy backends. In the case of merge-ours strategy, the resulting tree comes what we have in the index file, so it must match the current HEAD; otherwise it would not be "ours" merge. Signed-off-by: Junio C Hamano <junkio@cox.net>
-rwxr-xr-xgit-merge-ours.sh7
1 files changed, 7 insertions, 0 deletions
diff --git a/git-merge-ours.sh b/git-merge-ours.sh
index a64704f3e5..4f3d053889 100755
--- a/git-merge-ours.sh
+++ b/git-merge-ours.sh
@@ -4,4 +4,11 @@
#
# Pretend we resolved the heads, but declare our tree trumps everybody else.
#
+
+# We need to exit with 2 if the index does not match our HEAD tree,
+# because the current index is what we will be committing as the
+# merge result.
+
+test "$(git-diff-index --cached --name-status HEAD)" = "" || exit 2
+
exit 0