如何从命令行列出SVN标记及其修订版

swo*_*swo 24 svn tags command-line revisions

我需要修改不同的标签.到目前为止,我在SmartSVN中使用了Tag-Browser.但它很慢.

svn ls "^/tags"显示标签但没有修改的东西.等等

svn log /path/to/tag -v --stop-on-copy 
Run Code Online (Sandbox Code Playgroud)

提供了太多令人困惑的信息,这是不需要的.

是否有svn命令只能获取标签及其修订版?

nos*_*sid 33

您可以通过添加选项查看每个标记的最新提交的修订号-v:

svn ls -v ^/tags
Run Code Online (Sandbox Code Playgroud)

如果要处理结果,我建议使用命令行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)'))
Run Code Online (Sandbox Code Playgroud)