Использование svn_load_dirs.pl с ubersvn в Windows - где путь $ENV{HOME}?

При использовании svn_load_dirs.pl с ubersvn в Windows - где должен быть путь $ENV{HOME}.

В коде svn_load_dirs.pl $ENV{HOME} не определен. Это еще не определено в моей системе. Где это должно быть?

Я предполагаю, что это будет место установки UberSVN: C:\Program Files (x86)\WANdisco\uberSVN

ОДНАКО код svn_load_dirs.pl привязывается к подпутьу: $ENV{HOME}/. Subversion/config

путь к папке / каталогу.subversion/config не существует под C: \ Program Files (x86) \ WANdisco \ uberSVN

Поэтому я застрял, потому что не думаю, что сценарий svn_load_dirs.pl может корректно работать с UberSVN в Windows без этой настройки.

1 ответ

Решение

$ENV{HOME} должен ссылаться на домашний каталог текущего пользователя. В Windows Vista/7 это "C:\Users\USER-NAME\", а в более старых версиях Windows это будет "C:\Documents and Settings\USER-NAME\"

Вот Perl-скрипт, который может решить вашу проблему с помощью скрипта, не получающего значение $ENV{HOME}:

BEGIN {
if ( substr ( $^O, 0, 5 ) eq q{MSWin} ) {
if ( $ENV{HOME} ) {
# leave as is
}
elsif ( $ENV{USERPROFILE} ) {
$ENV{HOME} = $ENV{USERPROFILE};
}
elsif ( $ENV{HOMEDRIVE} and $ENV{HOMEPATH} ) {
$ENV{HOME} = $ENV{HOMEDRIVE} . $SENV{HOMEPATH};
}
else {
$ENV{HOME} = '.';
} } }

Однако, согласно этой странице документации SVN, конфигурация для SubVersion находится в реестре, а не в файловой системе. Поэтому я думаю, что скрипт должен быть обновлен для работы в Windows:

Клиенты Subversion, работающие на платформах Windows, также могут использовать реестр Windows для хранения данных конфигурации

Другие вопросы по тегам