summaryrefslogtreecommitdiff
path: root/git-merge-one-file.sh
diff options
context:
space:
mode:
Diffstat (limited to 'git-merge-one-file.sh')
-rwxr-xr-xgit-merge-one-file.sh17
1 files changed, 12 insertions, 5 deletions
diff --git a/git-merge-one-file.sh b/git-merge-one-file.sh
index 07dfeb8df4..9879c59395 100755
--- a/git-merge-one-file.sh
+++ b/git-merge-one-file.sh
@@ -38,6 +38,14 @@ case "${1:-.}${2:-.}${3:-.}" in
# Deleted in both or deleted in one and unchanged in the other
#
"$1.." | "$1.$1" | "$1$1.")
+ if { test -z "$6" && test "$5" != "$7"; } ||
+ { test -z "$7" && test "$5" != "$6"; }
+ then
+ echo "ERROR: File $4 deleted on one branch but had its" >&2
+ echo "ERROR: permissions changed on the other." >&2
+ exit 1
+ fi
+
if test -n "$2"
then
echo "Removing $4"
@@ -107,17 +115,16 @@ case "${1:-.}${2:-.}${3:-.}" in
;;
esac
- src1=$(git-unpack-file $2)
- src2=$(git-unpack-file $3)
+ src1=$(git unpack-file $2)
+ src2=$(git unpack-file $3)
case "$1" in
'')
echo "Added $4 in both, but differently."
- orig=$(git-unpack-file $2)
- create_virtual_base "$orig" "$src2"
+ orig=$(git unpack-file e69de29bb2d1d6434b8b29ae775ad8c2e48c5391)
;;
*)
echo "Auto-merging $4"
- orig=$(git-unpack-file $1)
+ orig=$(git unpack-file $1)
;;
esac