push: allow --follow-tags to be set by config push.followTags

Signed-off-by: Dave Olszewski <cxreg@pobox.com>
Helped-by: Jeff King <peff@peff.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
Dave Olszewski 2015-02-16 01:16:19 -05:00 committed by Junio C Hamano
parent 06c21e18ab
commit a8bc269f11
4 changed files with 21 additions and 1 deletions

View File

@ -2079,6 +2079,12 @@ new default).
--
push.followTags::
If set to true enable '--follow-tags' option by default. You
may override this configuration at time of push by specifying
'--no-follow-tags'.
rebase.stat::
Whether to show a diffstat of what changed upstream since the last
rebase. False by default.

View File

@ -128,7 +128,10 @@ already exists on the remote side.
Push all the refs that would be pushed without this option,
and also push annotated tags in `refs/tags` that are missing
from the remote but are pointing at commit-ish that are
reachable from the refs being pushed.
reachable from the refs being pushed. This can also be specified
with configuration variable 'push.followTags'. For more
information, see 'push.followTags' in linkgit:git-config[1].
--signed::
GPG-sign the push request to update refs on the receiving

View File

@ -473,11 +473,21 @@ static int option_parse_recurse_submodules(const struct option *opt,
static int git_push_config(const char *k, const char *v, void *cb)
{
int *flags = cb;
int status;
status = git_gpg_config(k, v, NULL);
if (status)
return status;
if (!strcmp(k, "push.followtags")) {
if (git_config_bool(k, v))
*flags |= TRANSPORT_PUSH_FOLLOW_TAGS;
else
*flags &= ~TRANSPORT_PUSH_FOLLOW_TAGS;
return 0;
}
return git_default_config(k, v, NULL);
}

View File

@ -2188,6 +2188,7 @@ _git_config ()
pull.octopus
pull.twohead
push.default
push.followTags
rebase.autosquash
rebase.stat
receive.autogc