Kann ich git print x.y.z style Tag-Namen in einer sinnvollen Reihenfolge erstellen?

8

Betrachten Sie diese Liste der Versionsnummern:

%Vor%

git tag würde sie in der folgenden Reihenfolge ausdrucken:

%Vor%

Gibt es eine Möglichkeit, git tag in "numerischer" Reihenfolge anstatt in alphabetischer Reihenfolge zu drucken? Oder ein Workaround - vielleicht ein Programm, das ich durch die Ausgabe leiten kann, um sie zu ordnen, wie ich will?

    
nfm 22.05.2011, 22:41
quelle

3 Antworten

4

Einfachere Lösung:

%Vor%

Aufschlüsselung der sort -Optionen, die hier verwendet werden:

  • -V nach Version sortieren
Seth Robertson 23.05.2011, 00:11
quelle
15
%Vor%

Aufschlüsselung der sort -Optionen, die hier verwendet werden:

  • -n - Sortierung nach numerischer String-Reihenfolge (also 10 kommt nach 1 )
  • -t. - verwende Punkte als Feldtrennzeichen
  • -k1,1 definiert einen Sortierschlüssel für das erste Feld (und nur das erste Feld)
  • -k2,2 definiert einen Sortierschlüssel im zweiten Feld (und nur im zweiten Feld)
  • -k3,3 definiert einen Sortierschlüssel für das dritte Feld (und nur das dritte Feld)
Amber 22.05.2011 22:54
quelle
4

Sie werden bald (mit Git 1.9.x / 2.0, Q2 2014) in der Lage sein, git nur zu verwenden, um die richtige sortierte Ausgabe zu erhalten:

Siehe commit b6de0c6 , von commit 9ef176b , verfasst von Nguyễn Thái Ngọc Duy ( pclouds ) :

%Vor%
  

Sortiert in einer bestimmten Reihenfolge .
  Unterstützter Typ ist:

     
  • " refname " (lexikographische Reihenfolge),
  •   
  • " version:refname " oder " v:refname " (Tagnamen werden als Versionen behandelt).
  •   

Stellen Sie " - " vor, um die Sortierreihenfolge umzukehren.

In Ihrem Fall:

%Vor%

Einige Testfälle:

%Vor%

Hier ist, was Sie bekommen würden:

%Vor%     
VonC 25.03.2014 12:53
quelle

Tags und Links