Browse Source

notes: make expand_notes_ref globally accessible

This function is useful for other commands besides "git
notes" which want to let users refer to notes by their
shorthand name.

Signed-off-by: Jeff King <peff@peff.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
maint
Jeff King 14 years ago committed by Junio C Hamano
parent
commit
03bb5789cd
  1. 10
      builtin/notes.c
  2. 10
      notes.c
  3. 3
      notes.h

10
builtin/notes.c

@ -100,16 +100,6 @@ struct msg_arg { @@ -100,16 +100,6 @@ struct msg_arg {
struct strbuf buf;
};

static void expand_notes_ref(struct strbuf *sb)
{
if (!prefixcmp(sb->buf, "refs/notes/"))
return; /* we're happy */
else if (!prefixcmp(sb->buf, "notes/"))
strbuf_insert(sb, 0, "refs/", 5);
else
strbuf_insert(sb, 0, "refs/notes/", 11);
}

static int list_each_note(const unsigned char *object_sha1,
const unsigned char *note_sha1, char *note_path,
void *cb_data)

10
notes.c

@ -1285,3 +1285,13 @@ int copy_note(struct notes_tree *t, @@ -1285,3 +1285,13 @@ int copy_note(struct notes_tree *t,

return 0;
}

void expand_notes_ref(struct strbuf *sb)
{
if (!prefixcmp(sb->buf, "refs/notes/"))
return; /* we're happy */
else if (!prefixcmp(sb->buf, "notes/"))
strbuf_insert(sb, 0, "refs/", 5);
else
strbuf_insert(sb, 0, "refs/notes/", 11);
}

3
notes.h

@ -307,4 +307,7 @@ void string_list_add_refs_by_glob(struct string_list *list, const char *glob); @@ -307,4 +307,7 @@ void string_list_add_refs_by_glob(struct string_list *list, const char *glob);
void string_list_add_refs_from_colon_sep(struct string_list *list,
const char *globs);

/* Expand inplace a note ref like "foo" or "notes/foo" into "refs/notes/foo" */
void expand_notes_ref(struct strbuf *sb);

#endif

Loading…
Cancel
Save