Подтвердить что ты не робот

Как перечислить теги SVN и его изменения из командной строки

Мне нужны изменения разных тегов. До сих пор я использовал Tag-Browser в SmartSVN. Однако это довольно медленно.

Что-то вроде svn ls "^/tags" показывает только теги, но никаких изменений. И что-то вроде

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

дает слишком много запутанной информации, которая не нужна.

Есть ли команда svn для получения только тегов и их ревизии?

4b9b3361

Ответ 1

Вы можете увидеть номера версий последней фиксации для каждого тега, добавив опцию -v:

svn ls -v ^/tags

Если вы хотите обработать результаты, я рекомендую использовать командную строку svn info --xml --depth=immediates ^/tags и проанализировать XML-документ с помощью script. Например, следующий python script печатает имена тегов с их номером версии:

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