Кажется, что нет такого ярлыка. В качестве обходного пути я придумал эту функцию Баш:
function svnurls() {
svn info &>/dev/null || return
local d=$(svn info | sed -n -e '/^URL/s/.*: //p')
local i=0
while ! [[ "$d" =~ ^[^:]*:/$ ]]; do
echo $i $d
typeset -g svn$i="${d}"
d=${d%/*}
i=$((i+1))
done
}
Сначала он проверяет, является ли он называется в рабочей копии СВН и немедленно возвращается, если это не так.
Если да, то это хранилище URL отбирает рабочую копию от svn info
и обеспечивает его, а также всех его предков в переменных оболочки svn0
, svn1
и так далее. Кроме того, предок URLs печатаются в командной строке для удобства в последующих командах, которые могут быть такие вещи, как:
svn list $svn1 # list repository parents of working copy
svn switch $svn1/branches/mybranch # assuming standard layout and trunk checkout
(Подсказка: синтаксис ^/branches
не работает в хранилищах, где ствол и ветви нескольких проектов и теги могут быть глубже в иерархии).