2013-07-15 6 views
19

Ho bisogno di revisioni di tag diversi. Finora ho usato un Tag-Browser in SmartSVN. Comunque è piuttosto lento.Come elencare i tag SVN e le relative revisioni dalla riga di comando

Qualcosa come svn ls "^/tags" mostra solo i tag ma nessuna revisione. E qualcosa di simile

svn log /path/to/tag -v --stop-on-copy 

dà troppe informazioni confuse che non è necessario.

Esiste un comando svn per ottenere solo tag e la sua revisione?

risposta

26

È possibile visualizzare i numeri di revisione dei più recenti commit per ogni tag aggiungendo l'opzione -v:

svn ls -v ^/tags 

Se si desidera elaborare i risultati, mi consiglia di utilizzare la linea di comando svn info --xml --depth=immediates ^/tags e parsing XML documento con uno script. Ad esempio, il seguente script python stampa i nomi dei tag con il loro numero di revisione:

#! /usr/bin/env python3 
import sys, lxml.etree 
document = lxml.etree.parse(sys.stdin.buffer) 
for entry in document.xpath('//entry[@kind="dir"]'): 
    print(entry.xpath('string(@path)'), entry.xpath('string(commmit/@revision)')) 
Problemi correlati