threads / patch / 867

patchFix git-merge-one-file permissions auto-merging

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

## tl;dr

One message between Jun 8, 2005 and Jun 8, 2005. Diffs are folded; open one to read it.

replies: 0people: 1as markdown or json

Petr Baudis· Jun 8, 2005, 21:26 UTC · lore

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>

--- commit d0a0933d6ed6190a767f6baad6c93aa79b3901b2 tree 0a278964e7cd15b2f35b00551747c4908d65b244 parent 9d6694e94c2ff7fc24ecb4124234cef6c6037ad5 author Petr Baudis <pasky@ucw.cz> Wed, 08 Jun 2005 23:26:23 +0200 committer Petr Baudis <xpasky@machine.sinus.cz> Wed, 08 Jun 2005 23:26:23 +0200

 git-merge-one-file-script |    4 ++++
 1 files changed, 4 insertions(+), 0 deletions(-)
Show changes to git-merge-one-file-script +4 −0
diff --git a/git-merge-one-file-script b/git-merge-one-file-script
--- a/git-merge-one-file-script
+++ b/git-merge-one-file-script
@@ -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

|
-- 
				Petr "Pasky" Baudis
Stuff: http://pasky.or.cz/
<Espy> be careful, some twit might quote you out of context..

← back to recent threads