У меня есть 2 svn checkout, которые кто-то настраивает для меня. Теперь мне нужно проверить эти же файлы на другом компьютере, но поскольку я не проверял их изначально, я не знаю, какие URL использовать при запуске команды проверки svn:
svn co WHAT_GOES_HERE?
Поскольку эти 2 проверки уже существуют на одном из моих серверов, есть ли способ получить URL-адрес репо, из которого они были первоначально извлечены?
Вы можете получить URL-адрес каталога, в котором находитесь, а также корневой каталог репозитория и другую информацию, выполнив следующую команду в любом из извлеченных каталогов:
svn info
Если вам нужна команда, которая возвращает только URL-адрес репозитория, возможно, для использования в скрипте, вы можете передать следующий параметр:
svn info --show-item repos-root-url
Стоит отметить, что --show-item
доступен в Subversion 1.9+, В более старых версиях вы можете использовать следующий фрагмент, чтобы добиться аналогичного результата:
svn info | grep 'Repository Root' | awk '{print $NF}'
Для SVN 1.7 мне пришлось использовать
svn info | grep '^URL' | awk '{print $NF}'
Я надеюсь, что это поможет кому-то еще, кто приходит сюда с более новым SVN
Не нужно grep, просто используйте AWK для поиска и разграничения строки
svn info | awk '/^URL/{print $2}'