2013-07-15 98 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)')) 
相關問題