Reintegrate: handle merging from remote tracking branches
Junio C Hamano committed
Jan 10, 2010 at 11:12 UTC
dc8b63cc1211cc5b86126b49bcba29340027823b
1 file changed
+17
-4
Reintegrate
+17
-4
@@ -25,6 +25,7 @@ no)
25
return 1
26
else
27
EDITOR=: git commit -a --no-verify
28
+ echo "Accepted previous resolution"
29
return 0
30
fi
31
}
@@ -50,16 +51,28 @@ no)
51
exit
52
esac
53
53
-merge_msg="Merge branch '\(.*\)'"
54
x40='[0-9a-f][0-9a-f][0-9a-f][0-9a-f][0-9a-f]'
55
x40="$x40$x40$x40$x40$x40$x40$x40$x40"
56
LF='
57
'
58
59
show_merge () {
60
- branch=$(expr "$msg" : "$merge_msg") &&
61
- tip=$(git rev-parse --verify "refs/heads/$branch" 2>/dev/null) &&
62
- merged=$(git name-rev --refs="refs/heads/$branch" "$other" 2>/dev/null) &&
60
+ case "$msg" in
61
+ "Merge branch '"*"'"*" into "*)
62
+ branch=$(expr "$msg" : "Merge branch '\(.*\)'")
63
+ merge_hier=heads/
64
+ ;;
65
+ "Merge remote branch '"*"'"*" into "*)
66
+ branch=$(expr "$msg" : "Merge remote branch '\(.*\)'")
67
+ merge_hier=
68
+ ;;
69
+ *)
70
+ echo 2>&1 "Huh?: $msg"
71
+ exit 1
72
+ ;;
73
+ esac &&
74
+ tip=$(git rev-parse --verify "refs/$merge_hier$branch" 2>/dev/null) &&
75
+ merged=$(git name-rev --refs="refs/$merge_hier$branch" "$other" 2>/dev/null) &&
76
merged=$(expr "$merged" : "$x40 \(.*\)") &&
77
test "$merged" != undefined || {
78
other=$(git log -1 --pretty='format:%s' $other) &&