#list #svn
#Список #svn
Вопрос:
Мне нужно рекурсивно перечислить все каталоги и подкаталоги удаленного репозитория svn, я пытался использовать
svn list http://....myrepository -R --depth=infinity
но я также получаю файлы.
Есть ли способ указать «список svn», чтобы перечислить только папки без использования какой-либо последующей обработки в качестве grep …?
Ответ №1:
Нет, я почти уверен, что это невозможно с версии 1.14.
svn ls
Выводит path и параметр, является ли путь каталогом или ФАЙЛОМ (вы можете проверить это, экспортировав ls в формате xml). В search
svn ls есть опция, которая позволяет вам искать термины «глобального синтаксиса» в path. Невозможно передать аргумент glob search
, который будет отфильтровывать только каталоги. Вам придется использовать постобработку, такую как grep, или использовать выходной XML-файл.
Дополнительная информация о примере, если вывод из
svn list http://....myrepository -R --depth=infinity
является
branch/folder1/
branch/folder1/file.file
И вы пытаетесь найти что-то как
svn list http://....myrepository -R --depth=infinity --search r"*/"
Вы не получите вывод только folder1
по мере /
добавления после того, как список был выведен на терминал.
Было бы интересно узнать вариант использования, хотя, где это будет необходимо.
Ответ №2:
к сожалению, ваше предложение не работает с версией svn, которая у меня есть
$ svn --version
svn, version 1.9.12
.....
svn list http://...myRepo -R --depth=infinity --search r"*/"
Subcommand 'list' doesn't accept option '--search ARG'