mirror of
https://github.com/git/git.git
synced 2024-11-27 20:14:30 +08:00
tag: respect color.ui config
Since11b087adfd
(ref-filter: consult want_color() before emitting colors, 2017-07-13), we expect that setting "color.ui" to "always" will enable color tag formats even without a tty. As that commit was built on top of136c8c8b8f
(color: check color.ui in git_default_config(), 2017-07-13) from the same series, we didn't need to touch tag's config parsing at all. However, since we reverted136c8c8b8f
, we now need to explicitly call git_color_default_config() to make this work. Let's do so, and also restore the test dropped in0c88bf5050
(provide --color option for all ref-filter users, 2017-10-03). That commit swapped out our "color.ui=always" test for "--color" in preparation for "always" going away. But since it is here to stay, we should test both cases. Note that for-each-ref also lost its color.ui support as part of reverting136c8c8b8f
. But as a plumbing command, it should _not_ respect the color.ui config. Since it also gained a --color option in0c88bf5050
, that's the correct way to ask it for color. We'll continue to test that, and confirm that "color.ui" is not respected. Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
parent
33c643bb08
commit
b521fd1228
@ -158,7 +158,7 @@ static int git_tag_config(const char *var, const char *value, void *cb)
|
||||
|
||||
if (starts_with(var, "column."))
|
||||
return git_column_config(var, value, "tag", &colopts);
|
||||
return git_default_config(var, value, cb);
|
||||
return git_color_default_config(var, value, cb);
|
||||
}
|
||||
|
||||
static void write_tag_body(int fd, const struct object_id *oid)
|
||||
|
@ -441,6 +441,11 @@ test_expect_success '--color can override tty check' '
|
||||
test_cmp expected.color actual
|
||||
'
|
||||
|
||||
test_expect_success 'color.ui=always does not override tty check' '
|
||||
git -c color.ui=always for-each-ref --format="$color_format" >actual &&
|
||||
test_cmp expected.bare actual
|
||||
'
|
||||
|
||||
cat >expected <<\EOF
|
||||
heads/master
|
||||
tags/master
|
||||
|
@ -1925,6 +1925,12 @@ test_expect_success '--color overrides auto-color' '
|
||||
test_cmp expect.color actual
|
||||
'
|
||||
|
||||
test_expect_success 'color.ui=always overrides auto-color' '
|
||||
git -c color.ui=always tag $color_args >actual.raw &&
|
||||
test_decode_color <actual.raw >actual &&
|
||||
test_cmp expect.color actual
|
||||
'
|
||||
|
||||
test_expect_success 'setup --merged test tags' '
|
||||
git tag mergetest-1 HEAD~2 &&
|
||||
git tag mergetest-2 HEAD~1 &&
|
||||
|
Loading…
Reference in New Issue
Block a user