зеркало из https://github.com/microsoft/git.git
octopus: reenable fast-forward merges
The fast-forward logic is never being triggered because $common and $MRC are never equivalent. $common is initialized to a commit id by merge-base and MRC is initialized to HEAD. Fix this by initializing $MRC to the commit id for HEAD so that its possible for $MRC and $common to be equal. Signed-off-by: Stephen Boyd <bebarino@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
Родитель
81334502ee
Коммит
85bf49f9a5
|
@ -44,7 +44,7 @@ esac
|
||||||
# MRC is the current "merge reference commit"
|
# MRC is the current "merge reference commit"
|
||||||
# MRT is the current "merge result tree"
|
# MRT is the current "merge result tree"
|
||||||
|
|
||||||
MRC=$head MSG= PARENT="-p $head"
|
MRC=$(git rev-parse --verify -q $head) MSG= PARENT="-p $head"
|
||||||
MRT=$(git write-tree)
|
MRT=$(git write-tree)
|
||||||
CNT=1 ;# counting our head
|
CNT=1 ;# counting our head
|
||||||
NON_FF_MERGE=0
|
NON_FF_MERGE=0
|
||||||
|
|
|
@ -82,4 +82,22 @@ test_expect_success 'merge up-to-date output uses pretty names' '
|
||||||
git merge c4 c5 >actual &&
|
git merge c4 c5 >actual &&
|
||||||
test_cmp actual expected
|
test_cmp actual expected
|
||||||
'
|
'
|
||||||
|
|
||||||
|
cat >expected <<\EOF
|
||||||
|
Fast-forwarding to: c1
|
||||||
|
Trying simple merge with c2
|
||||||
|
Merge made by octopus.
|
||||||
|
c1.c | 1 +
|
||||||
|
c2.c | 1 +
|
||||||
|
2 files changed, 2 insertions(+), 0 deletions(-)
|
||||||
|
create mode 100644 c1.c
|
||||||
|
create mode 100644 c2.c
|
||||||
|
EOF
|
||||||
|
|
||||||
|
test_expect_success 'merge fast-forward output uses pretty names' '
|
||||||
|
git reset --hard c0 &&
|
||||||
|
git merge c1 c2 >actual &&
|
||||||
|
test_cmp actual expected
|
||||||
|
'
|
||||||
|
|
||||||
test_done
|
test_done
|
||||||
|
|
Загрузка…
Ссылка в новой задаче