On 02/02/2017 12:11 AM, Junio C Hamano wrote:
> Jeff King <[email protected]> writes:
> 
>> This might be nitpicking, but it's _not_ ignored. It still negates an
>> earlier "--create-reflog". It is only that it does not override the
>> decision to create a reflog caused by the setting of
>> core.logallrefupdates.

This corner case is quite important. Glad you thought about it!

> -- >8 --
> From: Cornelius Weig <[email protected]>
> Date: Wed, 1 Feb 2017 23:07:27 +0100
> Subject: [PATCH] doc: add note about ignoring '--no-create-reflog'
> 
> The commands git-branch and git-tag accept the '--create-reflog'
> option, and create reflog even when core.logallrefupdates
> configuration is explicitly set not to.
> 
> On the other hand, the negated form '--no-create-reflog' is accepted
> as a valid option but has no effect (other than overriding an
> earlier '--create-reflog' on the command line). This silent noop may
> puzzle users.  To communicate that this is a known limitation, add a
> short note in the manuals for git-branch and git-tag.
> 
> Signed-off-by: Cornelius Weig <[email protected]>
> Signed-off-by: Junio C Hamano <[email protected]>
> ---
>  Documentation/git-branch.txt | 3 +++
>  Documentation/git-tag.txt    | 3 +++
>  2 files changed, 6 insertions(+)
> 
> diff --git a/Documentation/git-branch.txt b/Documentation/git-branch.txt
> index 5516a47b54..102e426fd8 100644
> --- a/Documentation/git-branch.txt
> +++ b/Documentation/git-branch.txt
> @@ -91,6 +91,9 @@ OPTIONS
>       based sha1 expressions such as "<branchname>@\{yesterday}".
>       Note that in non-bare repositories, reflogs are usually
>       enabled by default by the `core.logallrefupdates` config option.
> +     The negated form `--no-create-reflog` does not override the
> +     default, even though it overrides `--create-reflog` that appears
> +     earlier on the command line.
>  
>  -f::
>  --force::
> diff --git a/Documentation/git-tag.txt b/Documentation/git-tag.txt
> index 2ac25a9bb3..fd7eeae075 100644
> --- a/Documentation/git-tag.txt
> +++ b/Documentation/git-tag.txt
> @@ -152,6 +152,9 @@ This option is only applicable when listing tags without 
> annotation lines.
>  --create-reflog::
>       Create a reflog for the tag. To globally enable reflogs for tags, see
>       `core.logAllRefUpdates` in linkgit:git-config[1].
> +     The negated form `--no-create-reflog` does not override the
> +     default, even though it overrides `--create-reflog` that appears
> +     earlier on the command line.
>  
>  <tagname>::
>       The name of the tag to create, delete, or describe.
> 

Your amended version is quite concise and says everything there is to
say. Thanks

Reply via email to