On Thu, Feb 27, 2014 at 07:56:52PM +0700, Nguyễn Thái Ngọc Duy wrote: > --sort=version:refname (or --sort=v:refname for short) sorts tags as > if they are versions. --sort=-refname reverses the order (with or > without ":version"). > > versioncmp() is copied from string/strverscmp.c in glibc commit > ee9247c38a8def24a59eb5cfb7196a98bef8cfdc, reformatted to Git coding > style. The implementation is under LGPL-2.1 and according to [1] I can > relicense it to GPLv2. This looks good to me. One minor typo: > diff --git a/Documentation/git-tag.txt b/Documentation/git-tag.txt > index 404257d..9b05931 100644 > --- a/Documentation/git-tag.txt > +++ b/Documentation/git-tag.txt > @@ -95,6 +95,12 @@ OPTIONS > using fnmatch(3)). Multiple patterns may be given; if any of > them matches, the tag is shown. > > +--sort=<type>:: > + Sort in a specific order. Supported type is "refname" > + (lexicographic order), "version:refname" or "v:refname" (tags > + name are treated as versions). Prepend "-" to reverse sort s/tags name/tag names/ You had mentioned earlier tweaking the version comparison to handle things like -rc better. I think that can come on top of this initial patch, but we should probably figure out the final sort order before including this in a release. -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