Re: [RFC/PATCH] verify-tag: add --check-name flag

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Tue, Jun 07, 2016 at 02:50:23PM -0700, Junio C Hamano wrote:

> >> Or it could even do this:
> >> 
> >> 	tag="$1"
> >> 	if ! git tag -v "$tag"
> >> 	if ! git tag -v "$tag"
> >>         then
> >> 		echo >&2 "Bad tag."
> >>                 exit 1
> >> 	fi
> >> +	tag=$(git tag --show-tagname $tag)
> >> 	make dest=/usr/local/$package/$tag install
> >
> > It is racy. That probably doesn't matter for most callers, but it would
> > be nice to be able to get a custom format out of the "-v" invocation.
> 
> Heh, you can do
> 
> -	tag="$1"
> +	tag=$(git rev-parse --verify "$1")
> 
> upfront and it no longer is racy, no?

Yes, though that doesn't quite work today. The formatted output comes
from "tag -l", which wants a refname. You can almost use "git show", but
its format specifiers don't do tag parsing (they probably should).
Likewise you can't use cat-file, as it doesn't do any intra-object
parsing at all (which arguably it should).

I'm still not sure I like the direction, simply because it requires 3
invocations of git to accomplish this task (which is inefficient in
terms of processes, but also just means the interface is a bit tedious
to work with; we could be making this easier for the caller).

-Peff
--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [Linux Kernel Development]     [Gcc Help]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [V4L]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [Fedora Users]