summaryrefslogtreecommitdiff
path: root/t/t4020-diff-external.sh
diff options
context:
space:
mode:
authorLibravatar Greg Price <price@ksplice.com>2009-07-22 12:38:58 -0400
committerLibravatar Junio C Hamano <gitster@pobox.com>2009-07-22 11:15:06 -0700
commit1830d9cb62772c0626297e4bb6e537664283ebfa (patch)
tree0462ae20652b3b630b70eadb9eba9b3c0cfd0999 /t/t4020-diff-external.sh
parentcheckout -f: deal with a D/F conflict entry correctly (diff)
downloadtgif-1830d9cb62772c0626297e4bb6e537664283ebfa.tar.xz
Fix rebase -p --onto
In a rebase with --onto, the correct test for whether we can skip rewriting a commit is if it is already on top of $ONTO, not $UPSTREAM. Without --onto, this distinction does not exist and the behavior does not change. In a situation with two merged branches on a common base X: X---o---o---o---M \ / x---x---x---x Y if we try to move the branches from their base on X to be based on Y, so as to get X Y---o'--o'--o'--M' \ / x'--x'--x'--x' then we fail. The command `git rebase -p --onto Y X M` moves only the first-parent chain, like so: X \ x---x---x---x \ Y---o'--o'--o'--M' because it mistakenly drops the other branch(es) x---x---x---x from the TODO file. This tests and fixes this behavior. Signed-off-by: Greg Price <price@ksplice.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 't/t4020-diff-external.sh')
0 files changed, 0 insertions, 0 deletions