Re: [PATCH] notes: Allow treeish expressions as notes ref
From: Junio C Hamano <hidden>
Date: 2016-06-15 23:05:45
Mike Hommey [off-list ref] writes:
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 <redacted>
---
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.