diff options
| author | Ævar Arnfjörð Bjarmason <avarab@gmail.com> | 2021-02-25 02:21:16 +0100 |
|---|---|---|
| committer | Junio C Hamano <gitster@pobox.com> | 2021-02-24 19:02:58 -0800 |
| commit | bfa9148ff7df2ee5213c6467e3410ba134591178 (patch) | |
| tree | 221bf7fe60af92834f332a9edef94ad8120931c8 | |
| parent | 59ec22464f6c2b170b05f287e00740ea2288fe5c (diff) | |
| download | git-bfa9148ff7df2ee5213c6467e3410ba134591178.tar.xz | |
remote: add camel-cased *.tagOpt key, like clone
Change "git remote add" so that it adds a *.tagOpt key, and not the
lower-cased *.tagopt on "git remote add --no-tags", just as "git clone
--no-tags" would do.
This doesn't matter for anything that reads the config. It's just
prettier if we write config keys in their documented camelCase form to
user-readable config files.
When I added support for "clone -no-tags" in 0dab2468ee5 (clone: add a
--no-tags option to clone without tags, 2017-04-26) I made it use
the *.tagOpt form, but the older "git remote add" added in
111fb858654 (remote add: add a --[no-]tags option, 2010-04-20) has
been using *.tagopt all this time.
It's easy enough to add a test for this, so let's do that. We can't
use "git config -l" there, because it'll normalize the keys to their
lower-cased form. Let's add the test for "git clone" too for good
measure, not just to the "git remote" codepath we're fixing.
Signed-off-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
| -rw-r--r-- | builtin/remote.c | 2 | ||||
| -rwxr-xr-x | t/t5505-remote.sh | 1 | ||||
| -rwxr-xr-x | t/t5612-clone-refspec.sh | 1 |
3 files changed, 3 insertions, 1 deletions
diff --git a/builtin/remote.c b/builtin/remote.c index d11a5589e4..f286ae9753 100644 --- a/builtin/remote.c +++ b/builtin/remote.c @@ -221,7 +221,7 @@ static int add(int argc, const char **argv) if (fetch_tags != TAGS_DEFAULT) { strbuf_reset(&buf); - strbuf_addf(&buf, "remote.%s.tagopt", name); + strbuf_addf(&buf, "remote.%s.tagOpt", name); git_config_set(buf.buf, fetch_tags == TAGS_SET ? "--tags" : "--no-tags"); } diff --git a/t/t5505-remote.sh b/t/t5505-remote.sh index ecadf02d64..ffd821c00e 100755 --- a/t/t5505-remote.sh +++ b/t/t5505-remote.sh @@ -591,6 +591,7 @@ test_expect_success 'add --no-tags' ' cd add-no-tags && git init && git remote add -f --no-tags origin ../one && + grep tagOpt .git/config && git tag -l some-tag >../test/output && git tag -l foobar-tag >../test/output && git config remote.origin.tagopt >>../test/output diff --git a/t/t5612-clone-refspec.sh b/t/t5612-clone-refspec.sh index e3b436d8ae..e1839238de 100755 --- a/t/t5612-clone-refspec.sh +++ b/t/t5612-clone-refspec.sh @@ -94,6 +94,7 @@ test_expect_success 'by default no tags will be kept updated' ' test_expect_success 'clone with --no-tags' ' ( cd dir_all_no_tags && + grep tagOpt .git/config && git fetch && git for-each-ref refs/tags >../actual ) && |
