From: Phillip Wood <phillip.wood123@gmail.com>
To: Bello Caleb Olamide <belkid98@gmail.com>
Cc: Junio C Hamano <gitster@pobox.com>,
git@vger.kernel.org, toon@iotcl.com, christian.couder@gmail.com,
usmanakinyemi202@gmail.com, kaartic.sivaraam@gmail.com,
me@ttaylorr.com, karthik.188@gmail.com,
phillip.wood@dunelm.org.uk
Subject: Re: [Outreachy PATCH v6 1/3] environment: stop storing `core.attributesFile` globally
Date: Wed, 11 Feb 2026 09:31:53 +0000 [thread overview]
Message-ID: <37abfe28-ff89-460a-962d-4503ec3f7975@gmail.com> (raw)
In-Reply-To: <aYsEpvFwCSHb5DYO@ubuntu>
Thanks for the backtrace which helped me spot the problem though I
should have spotted this yesterday. The problem is in
initialize_repository()
> void initialize_repository(struct repository *repo)
> {
> + if (repo->initialized)
> + BUG("repository initialized already");
> + repo->initialized = true;
> +
> repo->remote_state = remote_state_new();
> repo->parsed_objects = parsed_object_pool_new(repo);
> ALLOC_ARRAY(repo->index, 1);
> index_state_init(repo->index, repo);
> repo->check_deprecated_config = true;
> + repo_config_values_init(repo_config_values(repo));
Here you need to use repo->config_values_private_ instead of using the
accessor as it is fine to initialize the config values to their defaults
in any instance, it is only when we read them that we want to assert
that we're reading from "the_repository".
Thanks
Phillip
>
> /*
> * When a command runs inside a repository, it learns what
>
> Some of the tests that fail are related to the submodule and a
> couple output is shown below
>
> ./t7412-submodule-absorbgitdirs.sh -i -v
> ...
> Initialized empty Git repository in /home/ubuntu/Code/open_source/git/t/trash directory.t7412-submodule-absorbgitdirs/sub1/.git/
> [master (root-commit) 50e526b] first
> Author: A U Thor <author@example.com>
> 1 file changed, 1 insertion(+)
> create mode 100644 first.t
> BUG: repository.c:56: trying to read config from wrong repository instance
> Aborted (core dumped)
> not ok 1 - setup a real submodule
> #
> # cwd="$(pwd)" &&
> # git init sub1 &&
> # test_commit -C sub1 first &&
> # git submodule add ./sub1 &&
> # test_tick &&
> # git commit -m superproject
> #
> 1..1
>
> ./t4027-diff-submodule.sh -i -v
> ...
> Initialized empty Git repository in /home/ubuntu/Code/open_source/git/t/trash directory.t4027-diff-submodule/sub/.git/
> [master (root-commit) 4431e0b] submodule
> Author: A U Thor <author@example.com>
> 1 file changed, 1 insertion(+)
> create mode 100644 world
> BUG: repository.c:56: trying to read config from wrong repository instance
> Aborted (core dumped)
> not ok 1 - setup
> #
> # test_tick &&
> # test_create_repo sub &&
> # (
> # cd sub &&
> # echo hello >world &&
> # git add world &&
> # git commit -m submodule
> # ) &&
> #
> # test_tick &&
> # echo frotz >nitfol &&
> # git add nitfol sub &&
> # git commit -m superproject &&
> #
> # (
> # cd sub &&
> # echo goodbye >world &&
> # git add world &&
> # git commit -m "submodule #2"
> # ) &&
> #
> # git -C sub rev-list HEAD >revs &&
> # set x $(cat revs) &&
> # echo ":160000 160000 $3 $ZERO_OID M sub" >expect &&
> # subtip=$3 subprev=$2
> #
> 1..1
>
> Thanks
>
next prev parent reply other threads:[~2026-02-11 9:31 UTC|newest]
Thread overview: 15+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-02-10 10:17 [Outreachy PATCH v6 1/3] environment: stop storing `core.attributesFile` globally Bello Caleb Olamide
2026-02-10 15:07 ` Phillip Wood
2026-02-11 8:05 ` Bello Olamide
2026-02-11 9:31 ` Phillip Wood [this message]
2026-02-11 12:05 ` Bello Olamide
2026-02-11 16:46 ` Junio C Hamano
2026-02-12 10:33 ` Phillip Wood
2026-02-12 17:13 ` Junio C Hamano
-- strict thread matches above, loose matches on Subject: below --
2026-02-03 15:42 [Outreachy PATCH v6 0/3] store repo specific config values in new `struct repo_config_values` Olamide Caleb Bello
2026-02-03 15:42 ` [Outreachy PATCH v6 1/3] environment: stop storing `core.attributesFile` globally Olamide Caleb Bello
2026-02-04 16:39 ` Phillip Wood
2026-02-09 8:47 ` Bello Olamide
2026-02-07 1:14 ` Junio C Hamano
2026-02-08 11:14 ` Phillip Wood
2026-02-09 8:54 ` Bello Olamide
2026-02-10 8:40 ` Bello Olamide
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=37abfe28-ff89-460a-962d-4503ec3f7975@gmail.com \
--to=phillip.wood123@gmail.com \
--cc=belkid98@gmail.com \
--cc=christian.couder@gmail.com \
--cc=git@vger.kernel.org \
--cc=gitster@pobox.com \
--cc=kaartic.sivaraam@gmail.com \
--cc=karthik.188@gmail.com \
--cc=me@ttaylorr.com \
--cc=phillip.wood@dunelm.org.uk \
--cc=toon@iotcl.com \
--cc=usmanakinyemi202@gmail.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox