If you're like me and you use semver for versioning your tags, you probably hate when you do this:
$ git tag -l
0.1.0
0.10.0
0.2.0
0.3.0
0.3.1
0.4.0
0.5.0
0.6.0
0.7.0
0.7.1
0.7.2
0.8.0
0.8.1
0.8.2
0.8.3
0.8.4
0.8.5
0.8.6
0.9.0
because the 0.10.0
tag is hiding way up near the top and you might not even see it.
Here's the solution, create a file on your $PATH
(maybe in your ~/bin
dir) called git-tag-sort
with the contents of the file below, and you should be able to do this:
$ git tag-sort
0.1.0
0.2.0
0.3.0
0.3.1
0.4.0
0.5.0
0.6.0
0.7.0
0.7.1
0.7.2
0.8.0
0.8.1
0.8.2
0.8.3
0.8.4
0.8.5
0.8.6
0.9.0
0.10.0
Have fun!
This
--sort v:refname
work with prerelease versions; e.g.:2.1.0 and 2.1.1 should come after their release candidates but they don't.