Re: [PATCH] notes: Allow treeish expressions as notes ref
- From
Junio C Hamano <gitster@pobox.com>
- Date
- Jul 13, 2015, 21:19 UTC
- Message-ID
- <xmqqegkbzrf6.fsf@gitster.dls.corp.google.com>
- In-Reply-To
- <1436517551-12172-1-git-send-email-mh@glandium.org>
Mike Hommey <mh@glandium.org> writes:
Show 24 quoted lines
> init_notes() is the main point of entry to the notes API. It is an arbitrary
> restriction that all it allows as input is a strict ref name, when callers
> may want to give an arbitrary treeish.
>
> However, some operations that require updating the notes tree require a
> strict ref name, because they wouldn't be able to update e.g. foo@{1}.
>
> So we allow treeish expressions to be used in the case the notes tree is
> going to be used without write "permissions", and to distinguish whether
> the notes tree is intended to be used for reads only, or will be updated,
> a flag is added.
>
> This has the side effect of enabling the use of treeish as notes refs in
> commands allowing them, e.g. git log --notes=foo@{1}.
>
> Signed-off-by: Mike Hommey <mh@glandium.org>
> ---
> builtin/notes.c | 29 ++++++++++++++++-------------
> notes-cache.c | 11 ++++++-----
> notes-utils.c | 6 +++---
> notes.c | 11 +++++++----
> notes.h | 10 +++++++++-
> t/t3301-notes.sh | 10 ++++++++++
> 6 files changed, 51 insertions(+), 26 deletions(-)At least Documentation/pretty-options.txt needs to be updated, as it explicitly requests you to feed a ref, but you'd want to tell the users that you loosened it. I suspect Documentation/git-notes.txt may also need adjustment as that involves writing side, but I didn't look very carefully.
Thanks.