diff options
author | Johannes Schindelin <Johannes.Schindelin@gmx.de> | 2008-01-26 18:04:37 +0000 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2008-01-26 18:24:24 -0800 |
commit | c85c79279df2c8a583d95449d1029baba41f8660 (patch) | |
tree | 41a2936893206ec54c80bb6e9004f760fdaf303f /t/t5520-pull.sh | |
parent | e509db990b2ecae642efe3cdef4014d57d525f24 (diff) | |
download | git-c85c79279df2c8a583d95449d1029baba41f8660.tar.gz |
pull --rebase: be cleverer with rebased upstream branches
When the upstream branch is tracked, we can detect if that branch
was rebased since it was last fetched. Teach git to use that
information to rebase from the old remote head onto the new remote head.
Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 't/t5520-pull.sh')
-rwxr-xr-x | t/t5520-pull.sh | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/t/t5520-pull.sh b/t/t5520-pull.sh index 52b3a0c6dd..9484129ca5 100755 --- a/t/t5520-pull.sh +++ b/t/t5520-pull.sh @@ -71,8 +71,25 @@ test_expect_success 'branch.to-rebase.rebase' ' git reset --hard before-rebase && git config branch.to-rebase.rebase 1 && git pull . copy && + git config branch.to-rebase.rebase 0 && test $(git rev-parse HEAD^) = $(git rev-parse copy) && test new = $(git show HEAD:file2) ' +test_expect_success '--rebase with rebased upstream' ' + + git remote add -f me . && + git checkout copy && + git reset --hard HEAD^ && + echo conflicting modification > file && + git commit -m conflict file && + git checkout to-rebase && + echo file > file2 && + git commit -m to-rebase file2 && + git pull --rebase me copy && + test "conflicting modification" = "$(cat file)" && + test file = $(cat file2) + +' + test_done |