Merge branch 'gc/submodule-update-part2'
"git submodule update" without pathspec should silently skip an uninitialized submodule, but it started to become noisy by mistake. * gc/submodule-update-part2: submodule--helper: fix initialization of warn_if_uninitializedmaint
commit
740deeadd3
|
@ -2026,7 +2026,6 @@ struct update_data {
|
||||||
.references = STRING_LIST_INIT_DUP, \
|
.references = STRING_LIST_INIT_DUP, \
|
||||||
.single_branch = -1, \
|
.single_branch = -1, \
|
||||||
.max_jobs = 1, \
|
.max_jobs = 1, \
|
||||||
.warn_if_uninitialized = 1, \
|
|
||||||
}
|
}
|
||||||
|
|
||||||
static void next_submodule_warn_missing(struct submodule_update_clone *suc,
|
static void next_submodule_warn_missing(struct submodule_update_clone *suc,
|
||||||
|
|
|
@ -670,6 +670,39 @@ test_expect_success 'submodule update --init skips submodule with update=none' '
|
||||||
)
|
)
|
||||||
'
|
'
|
||||||
|
|
||||||
|
test_expect_success 'submodule update with pathspec warns against uninitialized ones' '
|
||||||
|
test_when_finished "rm -fr selective" &&
|
||||||
|
git clone super selective &&
|
||||||
|
(
|
||||||
|
cd selective &&
|
||||||
|
git submodule init submodule &&
|
||||||
|
|
||||||
|
git submodule update submodule 2>err &&
|
||||||
|
! grep "Submodule path .* not initialized" err &&
|
||||||
|
|
||||||
|
git submodule update rebasing 2>err &&
|
||||||
|
grep "Submodule path .rebasing. not initialized" err &&
|
||||||
|
|
||||||
|
test_path_exists submodule/.git &&
|
||||||
|
test_path_is_missing rebasing/.git
|
||||||
|
)
|
||||||
|
|
||||||
|
'
|
||||||
|
|
||||||
|
test_expect_success 'submodule update without pathspec updates only initialized ones' '
|
||||||
|
test_when_finished "rm -fr selective" &&
|
||||||
|
git clone super selective &&
|
||||||
|
(
|
||||||
|
cd selective &&
|
||||||
|
git submodule init submodule &&
|
||||||
|
git submodule update 2>err &&
|
||||||
|
test_path_exists submodule/.git &&
|
||||||
|
test_path_is_missing rebasing/.git &&
|
||||||
|
! grep "Submodule path .* not initialized" err
|
||||||
|
)
|
||||||
|
|
||||||
|
'
|
||||||
|
|
||||||
test_expect_success 'submodule update continues after checkout error' '
|
test_expect_success 'submodule update continues after checkout error' '
|
||||||
(cd super &&
|
(cd super &&
|
||||||
git reset --hard HEAD &&
|
git reset --hard HEAD &&
|
||||||
|
|
Loading…
Reference in New Issue