tag: support --sort=<spec>
authorNguyễn Thái Ngọc Duy <pclouds@gmail.com>
Thu, 27 Feb 2014 12:56:52 +0000 (19:56 +0700)
committerJunio C Hamano <gitster@pobox.com>
Thu, 27 Feb 2014 22:04:05 +0000 (14:04 -0800)
commit9ef176b55c373ba087b2d84e77b5713578891927
treea722c05ca54a4573a91076d04a4d47a60680bfd5
parent5f95c9f850b19b368c43ae399cc831b17a26a5ac
tag: support --sort=<spec>

--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.

[1] http://www.gnu.org/licenses/gpl-faq.html#AllCompatibility

Signed-off-by: Nguyễn Thái Ngọc Duy <pclouds@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Documentation/git-tag.txt
Makefile
builtin/tag.c
cache.h
t/t7004-tag.sh
versioncmp.c [new file with mode: 0644]