Staging
v0.8.1
Revision 68d06c5200775ffda91881254ca7a92f27db68ef authored by Jeff King on 19 February 2008, 16:25:22 UTC, committed by Junio C Hamano on 20 February 2008, 04:46:10 UTC
The previous text was correct, but it was easy to miss the
fact that we are talking about "matching" refs. That is, the
text can be parsed as "we push the union of the sets
of remote and local heads" and not "we push the intersection
of the sets of remote and local heads". (The former actually
doesn't make sense if you think about it, since we don't
even _have_ some of those heads). A careful reading would
reveal the correct meaning, but it makes sense to be as
explicit as possible in documentation.

We also explicitly use and introduce the term "matching";
this is a term discussed on the list, and it seems useful
to for users to be able to refer to this behavior by name.

Signed-off-by: Jeff King <peff@peff.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
1 parent 2b8130c
Raw File
t3401-rebase-partial.sh
#!/bin/sh
#
# Copyright (c) 2006 Yann Dirson, based on t3400 by Amos Waterland
#

test_description='git rebase should detect patches integrated upstream

This test cherry-picks one local change of two into master branch, and
checks that git rebase succeeds with only the second patch in the
local branch.
'
. ./test-lib.sh

test_expect_success \
    'prepare repository with topic branch' \
    'echo First > A &&
     git update-index --add A &&
     git-commit -m "Add A." &&

     git-checkout -b my-topic-branch &&

     echo Second > B &&
     git update-index --add B &&
     git-commit -m "Add B." &&

     echo AnotherSecond > C &&
     git update-index --add C &&
     git-commit -m "Add C." &&

     git-checkout -f master &&

     echo Third >> A &&
     git update-index A &&
     git-commit -m "Modify A."
'

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 branch master-merge master &&
     git branch my-topic-branch-merge my-topic-branch
'

test_debug \
    'git cherry master &&
     git format-patch -k --stdout --full-index master >/dev/null &&
     gitk --all & sleep 1
'

test_expect_success \
    'rebase topic branch against new master and check git-am did not get halted' \
    'git-rebase master && test ! -d .dotest'

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'

test_done
back to top