Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.kernel.org/pub/scm/git/git.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJunio C Hamano <gitster@pobox.com>2023-07-06 21:54:46 +0300
committerJunio C Hamano <gitster@pobox.com>2023-07-06 21:54:46 +0300
commit5a1d9e8f8777a60d388278af6093af8483f48811 (patch)
tree6af9bdd9f3d0b9b95c010c7e61b2ad08cc0e4aa3
parentf4c18e58be60d3f7cfec5da23f8d89526abce75a (diff)
parenta53f43f9005e8a6fd4c5a6733c69b46199c7bb75 (diff)
Merge branch 'gc/config-partial-submodule-kvi-fix'
Partially revert a sanity check that the rest of the config code was not ready, to avoid triggering it in a corner case. * gc/config-partial-submodule-kvi-fix: config: don't BUG when both kvi and source are set
-rw-r--r--config.c6
-rwxr-xr-xt/t5616-partial-clone.sh10
2 files changed, 8 insertions, 8 deletions
diff --git a/config.c b/config.c
index 1cdad1e160..08a782e6a7 100644
--- a/config.c
+++ b/config.c
@@ -109,8 +109,6 @@ static struct config_reader the_reader;
static inline void config_reader_push_source(struct config_reader *reader,
struct config_source *top)
{
- if (reader->config_kvi)
- BUG("source should not be set while iterating a config set");
top->prev = reader->source;
reader->source = top;
}
@@ -128,16 +126,12 @@ static inline struct config_source *config_reader_pop_source(struct config_reade
static inline void config_reader_set_kvi(struct config_reader *reader,
struct key_value_info *kvi)
{
- if (kvi && (reader->source || reader->parsing_scope))
- BUG("kvi should not be set while parsing a config source");
reader->config_kvi = kvi;
}
static inline void config_reader_set_scope(struct config_reader *reader,
enum config_scope scope)
{
- if (scope && reader->config_kvi)
- BUG("scope should only be set when iterating through a config source");
reader->parsing_scope = scope;
}
diff --git a/t/t5616-partial-clone.sh b/t/t5616-partial-clone.sh
index f519d2a87a..8759fc2853 100755
--- a/t/t5616-partial-clone.sh
+++ b/t/t5616-partial-clone.sh
@@ -257,8 +257,8 @@ test_expect_success 'partial clone with transfer.fsckobjects=1 works with submod
test_commit -C submodule mycommit &&
test_create_repo src_with_sub &&
- test_config -C src_with_sub uploadpack.allowfilter 1 &&
- test_config -C src_with_sub uploadpack.allowanysha1inwant 1 &&
+ git -C src_with_sub config uploadpack.allowfilter 1 &&
+ git -C src_with_sub config uploadpack.allowanysha1inwant 1 &&
test_config_global protocol.file.allow always &&
@@ -270,6 +270,12 @@ test_expect_success 'partial clone with transfer.fsckobjects=1 works with submod
test_when_finished rm -rf dst
'
+test_expect_success 'lazily fetched .gitmodules works' '
+ git clone --filter="blob:none" --no-checkout "file://$(pwd)/src_with_sub" dst &&
+ git -C dst fetch &&
+ test_when_finished rm -rf dst
+'
+
test_expect_success 'partial clone with transfer.fsckobjects=1 uses index-pack --fsck-objects' '
git init src &&
test_commit -C src x &&