In a recent security release,
05e9cd64ee (config: quote values
containing CR character, 2025-05-19) added calls to `git config get`,
`git config set`, and `git config unset` which are not present on the
maint-2.43 branch.
These subcommands were added in the following commits, released in
git-2.46.0:
4e51389000 (builtin/config: introduce "get" subcommand, 2024-05-06),
00bbdde141 (builtin/config: introduce "set" subcommand, 2024-05-06),
95ea69c67b (builtin/config: introduce "unset" subcommand, 2024-05-06)
Revert to the previous `git config` syntax for older maintenance
branches.
Signed-off-by: Todd Zullinger <tmz@pobox.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
printf "bar\r\n" >expect &&
git init cr-test &&
- git -C cr-test config set core.foo $(printf "bar\r") &&
- git -C cr-test config get core.foo >actual &&
+ git -C cr-test config core.foo $(printf "bar\r") &&
+ git -C cr-test config --get core.foo >actual &&
test_cmp expect actual
'
git -C repo mv sub $(printf "sub\r") &&
# Ensure config values containing CR are wrapped in quotes.
- git config unset -f repo/.gitmodules submodule.sub.path &&
+ git config --unset -f repo/.gitmodules submodule.sub.path &&
printf "\tpath = \"sub\r\"\n" >>repo/.gitmodules &&
- git config unset -f repo/.git/modules/sub/config core.worktree &&
+ git config --unset -f repo/.git/modules/sub/config core.worktree &&
{
printf "[core]\n" &&
printf "\tworktree = \"../../../sub\r\"\n"