Take the 2-minute tour ×
Server Fault is a question and answer site for professional system and network administrators. It's 100% free, no registration required.

I've successfully installed VisualSVN server on my computer and setup it's repository root on network, to save all files on another computer. My repositories root is \\file-server\svn\
I can access all my repositories using build-in web browser by going to https://localhost/svn/, but I wanted to install WebSVN.

When my repositories are on local drive then I have no problem viewing them with WebSVN, but I have problem when I want to access network location.

In config.php I have this config:

 $config->parentPath('c:\\Repositories');
 //$config->parentPath('file:///\file-server\svn');

When I comment first line and uncomment second I get following error:

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'

I was trying to map my network location as drive, but that didn't help.

Is there an option to setup network location in WebSVN?

share|improve this question

2 Answers 2

Here, WebSVN tries to connect file:///file:////file-server/svn/TestRepo/@ which is invalid location. File protocol connects to local filesystem. Try

svn://file-server/svn/TestRepo

Or,

https://localhost/svn/TestRepo
share|improve this answer
    
I'm able to add single repository using $config->addRepository('TestRepo', 'file:////\file-server\svn\TestRepo'); but I would like to add folder containing multiple repositories, using parentPath, this one gives me error –  Misiu Feb 4 '13 at 9:08
    
Yes! some tweaking in ParentPath Class of configclass.php is required. As opendir() could be used with file and ftp protocols only. –  sundeep Feb 4 '13 at 10:16
    
thanks for tip, but I don't write in php as much to be able to tweak that class correctly, but I give it a try :) –  Misiu Feb 4 '13 at 10:45
    
I've looked inside configclass and what it does internally is iteration over every subdirectory in specific path then it is adding repositories, so it is doing everything that my temporary solution does :) –  Misiu Feb 4 '13 at 11:00
1  
I know those svn functions (I read about them) but my intention wasn't creating web gui by my self, instead I wanted to use already existing one - WebSVN. I just wanted to get it working with network repository location. –  Misiu Feb 4 '13 at 12:17
up vote 0 down vote accepted

I've managed to create temporary solution: instead using parentPath I'm adding repositories in loop:

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);
}

This is same loop that configclass.php is doing inside, but mine fix error when adding repositories from network location.

If anyone knows how to use parentPath instead this solution or how to tweak configclass.php to correctly add repositories please add answer.

share|improve this answer

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.