Browse Source

[PATCH] Fix git-merge-one-file permissions auto-merging

In the automerge case, permissions were not restored properly after the
merge tool was invoked and overwrote the target file.

Signed-off-by: Petr Baudis <pasky@ucw.cz>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
maint
Petr Baudis 20 years ago committed by Linus Torvalds
parent
commit
8544a6f1b8
  1. 4
      git-merge-one-file-script

4
git-merge-one-file-script

@ -63,10 +63,14 @@ case "${1:-.}${2:-.}${3:-.}" in @@ -63,10 +63,14 @@ case "${1:-.}${2:-.}${3:-.}" in
merge -p "$src1" "$orig" "$src2" > "$4"
ret=$?
rm -f -- "$orig" "$src1" "$src2"

if [ "$6" != "$7" ]; then
echo "ERROR: Permissions $5->$6->$7 don't match."
ret=1
fi
case "$6" in *7??) mode=+x;; *) mode=-x;; esac
chmod "$mode" "$4"

if [ $ret -ne 0 ]; then
# Reset the index to the first branch, making
# git-diff-file useful

Loading…
Cancel
Save