mirror of
https://github.com/git/git
synced 2024-10-28 19:25:47 +00:00
push: --dry-run updates submodules when --recurse-submodules=on-demand
This patch adds a test to illustrate how push run with --dry-run doesn't actually perform a dry-run when push is configured to push submodules on-demand. Instead all submodules which need to be pushed are actually pushed to their remotes while any updates for the superproject are performed as a dry-run. This is a bug and not the intended behaviour of a dry-run. Signed-off-by: Brandon Williams <bmwill@google.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
parent
250ab24ab3
commit
1aa7365840
1 changed files with 24 additions and 0 deletions
|
@ -427,7 +427,31 @@ test_expect_success 'push unpushable submodule recursively fails' '
|
|||
cd submodule.git &&
|
||||
git rev-parse master >../actual
|
||||
) &&
|
||||
test_when_finished git -C work reset --hard master^ &&
|
||||
test_cmp expected actual
|
||||
'
|
||||
|
||||
test_expect_failure 'push --dry-run does not recursively update submodules' '
|
||||
(
|
||||
cd work/gar/bage &&
|
||||
git checkout master &&
|
||||
git rev-parse master >../../../expected_submodule &&
|
||||
> junk9 &&
|
||||
git add junk9 &&
|
||||
git commit -m "Ninth junk" &&
|
||||
|
||||
# Go up to 'work' directory
|
||||
cd ../.. &&
|
||||
git checkout master &&
|
||||
git rev-parse master >../expected_pub &&
|
||||
git add gar/bage &&
|
||||
git commit -m "Ninth commit for gar/bage" &&
|
||||
git push --dry-run --recurse-submodules=on-demand ../pub.git master
|
||||
) &&
|
||||
git -C submodule.git rev-parse master >actual_submodule &&
|
||||
git -C pub.git rev-parse master >actual_pub &&
|
||||
test_cmp expected_pub actual_pub &&
|
||||
test_cmp expected_submodule actual_submodule
|
||||
'
|
||||
|
||||
test_done
|
||||
|
|
Loading…
Reference in a new issue