Я успешно установил сервер VisualSVN на свой компьютер и настроил его корень репозитория в сети, чтобы сохранить все файлы на другом компьютере. Корень моих репозиториев \\file-server\svn\
Я могу получить доступ ко всем своим репозиториям с помощью встроенного веб-браузера, перейдя в https://localhost/svn/
, но я хотел установить WebSVN.
Когда мои репозитории находятся на локальном диске, у меня нет проблем с просмотром их с помощью WebSVN, но у меня возникают проблемы, когда я хочу получить доступ к сетевому расположению.
В config.php у меня такой конфиг:
$config->parentPath('c:\\Repositories');
//$config->parentPath('file:///\file-server\svn');
Когда я комментирую первую строку и раскомментирую вторую, я получаю следующую ошибку:
Error running this command: " "C:\Program Files\VisualSVN Server\bin\svn" --non-interactive --config-dir /tmp log --xml --quiet "file:///file:////file-server/svn/TestRepo/@"" --limit 1
svn: E180001: Unable to connect to a repository at URL 'file:///file:/file-server/svn/TestRepo'
svn: E180001: Unable to open an ra_local session to URL
svn: E180001: Unable to open repository 'file:///file:/file-server/svn/TestRepo'
Я пытался сопоставить свое сетевое местоположение как диск, но это не помогло.
Есть ли возможность настроить сетевое расположение в WebSVN?
Мне удалось создать временное решение: вместо этого я использовал parentPath
Я добавляю репозитории в цикле:
function getDirectoryList($d) {
$r = array();
$h = opendir($d);
while ($f = readdir($h)) {
if ($f != "." && $f != ".." && is_dir($d.'/'.$f)) {
$r[] = $f;
}
}
closedir($h);
return $r;
}
$files=getDirectoryList('file:////\file-server\svn');
foreach($files as $dir) {
$config->addRepository($dir, 'file:////\file-server\\svn\\'.$dir);
}
Это тот же цикл, что и configclass.php
делает внутри, но моя ошибка исправления при добавлении репозиториев из сетевого местоположения.
Если кто знает как пользоваться parentPath
вместо этого решение или как настроить configclass.php
для правильного добавления репозиториев добавьте ответ.
Здесь WebSVN пытается подключиться file:///file:////file-server/svn/TestRepo/@
это недопустимое местоположение. Файловый протокол подключается к локальной файловой системе. Пытаться
svn://file-server/svn/TestRepo
Или,
https://localhost/svn/TestRepo