2013-07-15 17 views
19

異なるタグのリビジョンが必要です。これまではSmartSVNでタグブラウザを使用していました。しかし、それはかなり遅いです。SVNタグとそのリビジョンをコマンドラインからリストする方法

svn ls "^/tags"のようなものは、タグのみを表示しますが、リビジョンは表示されません。 そして

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

のようなものが必要とされていませんあまりにも多くの混乱を招く情報を提供します。

タグとそのリビジョンだけを取得するsvnコマンドはありますか?

答えて

26

あなたは、最新のリビジョン番号はオプション-vを追加することにより、各タグのコミットを参照することができます

svn ls -v ^/tags 

あなたが結果を処理したい場合は、私は、コマンドラインsvn info --xml --depth=immediates ^/tagsを使用してXMLを解析お勧めしますスクリプトを使って文書を作成する。たとえば、次のpythonスクリプトは、リビジョン番号の付いたタグの名前を表示します。

#! /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)')) 
関連する問題