Skip to content

Commit b1bfcae

Browse files
author
Junio C Hamano
committed
merge: give a bit prettier merge message to "merge branch~$n"
This hacks the input to fmt-merge-msg to make the message for merging early part of a branch a little easier to read. Signed-off-by: Junio C Hamano <junkio@cox.net>
1 parent 9abaa7f commit b1bfcae

File tree

1 file changed

+17
-9
lines changed

1 file changed

+17
-9
lines changed

git-merge.sh

Lines changed: 17 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -91,6 +91,22 @@ finish () {
9191
esac
9292
}
9393

94+
merge_name () {
95+
remote="$1"
96+
rh=$(git-rev-parse --verify "$remote^0" 2>/dev/null) || return
97+
bh=$(git-show-ref -s --verify "refs/heads/$remote" 2>/dev/null)
98+
if test "$rh" = "$bh"
99+
then
100+
echo "$rh branch '$remote' of ."
101+
elif truname=$(expr "$remote" : '\(.*\)~[1-9][0-9]*$') &&
102+
git-show-ref -q --verify "refs/heads/$truname" 2>/dev/null
103+
then
104+
echo "$rh branch '$truname' (early part) of ."
105+
else
106+
echo "$rh commit '$remote'"
107+
fi
108+
}
109+
94110
case "$#" in 0) usage ;; esac
95111

96112
rloga= have_message=
@@ -188,15 +204,7 @@ else
188204
# in this loop.
189205
merge_name=$(for remote
190206
do
191-
rh=$(git-rev-parse --verify "$remote"^0 2>/dev/null) ||
192-
continue ;# not something we can merge
193-
bh=$(git show-ref -s --verify "refs/heads/$remote" 2>/dev/null)
194-
if test "$rh" = "$bh"
195-
then
196-
echo "$rh branch '$remote' of ."
197-
else
198-
echo "$rh commit '$remote'"
199-
fi
207+
merge_name "$remote"
200208
done | git-fmt-merge-msg
201209
)
202210
merge_msg="${merge_msg:+$merge_msg$LF$LF}$merge_name"

0 commit comments

Comments
 (0)