Merge branch 'st/verify-tag'
"git tag" and "git verify-tag" learned to put GPG verification status in their "--format=<placeholders>" output format. * st/verify-tag: t/t7004-tag: Add --format specifier tests t/t7030-verify-tag: Add --format specifier tests builtin/tag: add --format argument for tag -v builtin/verify-tag: add --format to verify-tag ref-filter: add function to print single ref_array_item gpg-interface, tag: add GPG_VERIFY_OMIT_STATUS flag
This commit is contained in:
27
ref-filter.c
27
ref-filter.c
@ -1361,7 +1361,7 @@ static struct ref_array_item *new_ref_array_item(const char *refname,
|
||||
return ref;
|
||||
}
|
||||
|
||||
static int filter_ref_kind(struct ref_filter *filter, const char *refname)
|
||||
static int ref_kind_from_refname(const char *refname)
|
||||
{
|
||||
unsigned int i;
|
||||
|
||||
@ -1374,11 +1374,7 @@ static int filter_ref_kind(struct ref_filter *filter, const char *refname)
|
||||
{ "refs/tags/", FILTER_REFS_TAGS}
|
||||
};
|
||||
|
||||
if (filter->kind == FILTER_REFS_BRANCHES ||
|
||||
filter->kind == FILTER_REFS_REMOTES ||
|
||||
filter->kind == FILTER_REFS_TAGS)
|
||||
return filter->kind;
|
||||
else if (!strcmp(refname, "HEAD"))
|
||||
if (!strcmp(refname, "HEAD"))
|
||||
return FILTER_REFS_DETACHED_HEAD;
|
||||
|
||||
for (i = 0; i < ARRAY_SIZE(ref_kind); i++) {
|
||||
@ -1389,6 +1385,15 @@ static int filter_ref_kind(struct ref_filter *filter, const char *refname)
|
||||
return FILTER_REFS_OTHERS;
|
||||
}
|
||||
|
||||
static int filter_ref_kind(struct ref_filter *filter, const char *refname)
|
||||
{
|
||||
if (filter->kind == FILTER_REFS_BRANCHES ||
|
||||
filter->kind == FILTER_REFS_REMOTES ||
|
||||
filter->kind == FILTER_REFS_TAGS)
|
||||
return filter->kind;
|
||||
return ref_kind_from_refname(refname);
|
||||
}
|
||||
|
||||
/*
|
||||
* A call-back given to for_each_ref(). Filter refs and keep them for
|
||||
* later object processing.
|
||||
@ -1671,6 +1676,16 @@ void show_ref_array_item(struct ref_array_item *info, const char *format, int qu
|
||||
putchar('\n');
|
||||
}
|
||||
|
||||
void pretty_print_ref(const char *name, const unsigned char *sha1,
|
||||
const char *format)
|
||||
{
|
||||
struct ref_array_item *ref_item;
|
||||
ref_item = new_ref_array_item(name, sha1, 0);
|
||||
ref_item->kind = ref_kind_from_refname(name);
|
||||
show_ref_array_item(ref_item, format, 0);
|
||||
free_array_item(ref_item);
|
||||
}
|
||||
|
||||
/* If no sorting option is given, use refname to sort as default */
|
||||
struct ref_sorting *ref_default_sorting(void)
|
||||
{
|
||||
|
Reference in New Issue
Block a user