Digamos que você use o Semantic Versioning ( http://semver.org/ ) para os lançamentos do seu projeto git, e sua lista de tags está crescendo cada vez mais.
Agora é a hora de você fazer uma nova tag, mas você não se lembra qual foi a última.
Você tenta:
$ tag -l | sort
mas então você vê:
0.0.1
0.0.10
0.0.2
0.0.3
0.0.4
0.0.5
0.0.6
0.0.7
0.0.8
0.0.9
0.1.0
Nota: que 0.0.10 vem depois de 0.0.1 – isso não está certo!
Você verifica a página do manual e nem a ordem do dicionário, nem a classificação numérica geral, nem a classificação numérica parecem funcionar. GAH !!! A frustração!
Você pensa consigo mesmo, devo escrever um script simples que analisa os pontos e depois faz a comparação? Não, alguém deve ter feito isso antes … um pouco mais no Google … Ainda nada.
tipo de versão para o resgate!
$ tag -l | sort -V
Agora o OS X sort
não vem com o sinalizador -V, então se você quiser usá-lo lá, você terá que usar macports ou brew ou algo para instalar o coreutils, então você deve ser capaz de fazer:
$ tag -l | gsort -V
Divirta-se pequenos!