web-dev-qa-db-fra.com

Comment répertorier les balises SVN et ses révisions à partir de la ligne de commande

J'ai besoin de révisions de différentes balises. Jusqu'à présent, j'ai utilisé un Tag-Browser dans SmartSVN. Mais c'est assez lent.

Quelque chose comme svn ls "^/tags" n'affiche que les balises mais aucune révision. Et quelque chose comme

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

donne trop d'informations confuses qui ne sont pas nécessaires.

Existe-t-il une commande svn pour obtenir uniquement les balises et sa révision?

25
swo

Vous pouvez voir les numéros de révision du commit le plus récent pour chaque balise en ajoutant l'option -v:

svn ls -v ^/tags

Si vous souhaitez traiter les résultats, je vous recommande d'utiliser la ligne de commande svn info --xml --depth=immediates ^/tags et l'analyse du document XML avec un script. Par exemple, le script python suivant imprime les noms des balises avec leur numéro de révision:

#! /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)'))
34
nosid