Browse Source

refs.c: add refs_shorten_unambiguous_ref()

Signed-off-by: Nguyễn Thái Ngọc Duy <pclouds@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
maint
Nguyễn Thái Ngọc Duy 6 years ago committed by Junio C Hamano
parent
commit
546edf37ae
  1. 11
      refs.c
  2. 2
      refs.h

11
refs.c

@ -1169,7 +1169,8 @@ int update_ref(const char *msg, const char *refname, @@ -1169,7 +1169,8 @@ int update_ref(const char *msg, const char *refname,
old_oid, flags, onerr);
}

char *shorten_unambiguous_ref(const char *refname, int strict)
char *refs_shorten_unambiguous_ref(struct ref_store *refs,
const char *refname, int strict)
{
int i;
static char **scanf_fmts;
@ -1247,7 +1248,7 @@ char *shorten_unambiguous_ref(const char *refname, int strict) @@ -1247,7 +1248,7 @@ char *shorten_unambiguous_ref(const char *refname, int strict)
strbuf_reset(&resolved_buf);
strbuf_addf(&resolved_buf, rule,
short_name_len, short_name);
if (ref_exists(resolved_buf.buf))
if (refs_ref_exists(refs, resolved_buf.buf))
break;
}

@ -1266,6 +1267,12 @@ char *shorten_unambiguous_ref(const char *refname, int strict) @@ -1266,6 +1267,12 @@ char *shorten_unambiguous_ref(const char *refname, int strict)
return xstrdup(refname);
}

char *shorten_unambiguous_ref(const char *refname, int strict)
{
return refs_shorten_unambiguous_ref(get_main_ref_store(the_repository),
refname, strict);
}

static struct string_list *hide_refs;

int parse_hide_refs_config(const char *var, const char *value, const char *section)

2
refs.h

@ -462,6 +462,8 @@ int check_refname_format(const char *refname, int flags); @@ -462,6 +462,8 @@ int check_refname_format(const char *refname, int flags);

const char *prettify_refname(const char *refname);

char *refs_shorten_unambiguous_ref(struct ref_store *refs,
const char *refname, int strict);
char *shorten_unambiguous_ref(const char *refname, int strict);

/** rename ref, return 0 on success **/

Loading…
Cancel
Save