Browse Source

rebase: allow --merge option to handle patches merged upstream

Enhance t3401-rebase-partial to test with --merge as well as
the standard am -3 strategy.

Signed-off-by: Eric Wong <normalperson@yhbt.net>
Signed-off-by: Junio C Hamano <junkio@cox.net>
maint
Eric Wong 19 years ago committed by Junio C Hamano
parent
commit
9a99c087da
  1. 15
      git-rebase.sh
  2. 13
      t/t3401-rebase-partial.sh

15
git-rebase.sh

@ -82,7 +82,10 @@ call_merge () { @@ -82,7 +82,10 @@ call_merge () {
rv=$?
case "$rv" in
0)
git-commit -C "$cmt" || die "commit failed: $MRESOLVEMSG"
if test -n "`git-diff-index HEAD`"
then
git-commit -C "$cmt" || die "commit failed: $MRESOLVEMSG"
fi
;;
1)
test -d "$GIT_DIR/rr-cache" && git-rerere
@ -110,9 +113,13 @@ finish_rb_merge () { @@ -110,9 +113,13 @@ finish_rb_merge () {
do
git-read-tree `cat "$dotest/cmt.$msgnum.result"`
git-checkout-index -q -f -u -a
git-commit -C "`cat $dotest/cmt.$msgnum`"

printf "Committed %0${prec}d" $msgnum
if test -n "`git-diff-index HEAD`"
then
git-commit -C "`cat $dotest/cmt.$msgnum`"
printf "Committed %0${prec}d" $msgnum
else
printf "Already applied: %0${prec}d" $msgnum
fi
echo ' '`git-rev-list --pretty=oneline -1 HEAD | \
sed 's/^[a-f0-9]\+ //'`
msgnum=$(($msgnum + 1))

13
t/t3401-rebase-partial.sh

@ -37,7 +37,9 @@ test_expect_success \ @@ -37,7 +37,9 @@ test_expect_success \
test_expect_success \
'pick top patch from topic branch into master' \
'git-cherry-pick my-topic-branch^0 &&
git-checkout -f my-topic-branch
git-checkout -f my-topic-branch &&
git-branch master-merge master &&
git-branch my-topic-branch-merge my-topic-branch
'

test_debug \
@ -50,4 +52,13 @@ test_expect_success \ @@ -50,4 +52,13 @@ test_expect_success \
'rebase topic branch against new master and check git-am did not get halted' \
'git-rebase master && test ! -d .dotest'

if test -z "$no_python"
then
test_expect_success \
'rebase --merge topic branch that was partially merged upstream' \
'git-checkout -f my-topic-branch-merge &&
git-rebase --merge master-merge &&
test ! -d .git/.dotest-merge'
fi

test_done

Loading…
Cancel
Save