список каталогов (и подкаталогов) удаленного репозитория svn

#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'