diff options
author | Junio C Hamano <gitster@pobox.com> | 2013-12-05 12:58:27 -0800 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2013-12-05 12:58:27 -0800 |
commit | 07d406b742b577a39d7cbdacd76d0dde021ff788 (patch) | |
tree | b9c83d886e3b8a5d0169f85b08ac8f52091a4d7b /t | |
parent | 219ea0e79d1e5cdb5f1133aff70fe4e5737dd59d (diff) | |
parent | d96855ff517560650c62eca51a8bb78263f6a3ef (diff) | |
download | git-07d406b742b577a39d7cbdacd76d0dde021ff788.tar.gz git-07d406b742b577a39d7cbdacd76d0dde021ff788.tar.xz |
Merge branch 'jc/merge-base-reflog'
Code the logic in "pull --rebase" that figures out a fork point
from reflog entries in C.
* jc/merge-base-reflog:
merge-base: teach "--fork-point" mode
merge-base: use OPT_CMDMODE and clarify the command line parsing
Diffstat (limited to 't')
-rwxr-xr-x | t/t6010-merge-base.sh | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/t/t6010-merge-base.sh b/t/t6010-merge-base.sh index f80bba871..30a68335b 100755 --- a/t/t6010-merge-base.sh +++ b/t/t6010-merge-base.sh @@ -230,4 +230,32 @@ test_expect_success 'criss-cross merge-base for octopus-step' ' test_cmp expected.sorted actual.sorted ' +test_expect_success 'using reflog to find the fork point' ' + git reset --hard && + git checkout -b base $E && + + ( + for count in 1 2 3 + do + git commit --allow-empty -m "Base commit #$count" && + git rev-parse HEAD >expect$count && + git checkout -B derived && + git commit --allow-empty -m "Derived #$count" && + git rev-parse HEAD >derived$count && + git checkout -B base $E || exit 1 + done + + for count in 1 2 3 + do + git merge-base --fork-point base $(cat derived$count) >actual && + test_cmp expect$count actual || exit 1 + done + + ) && + # check that we correctly default to HEAD + git checkout derived && + git merge-base --fork-point base >actual && + test_cmp expect3 actual +' + test_done |