Hi, we are currently running subversion 1.7.3 and are using svnserve on the server (windows platform). We are using the distribution from Collabnet and now we want to switch to using the Subversion Edge config app and Apache web server. Because we have many users in different locations and a lot of build scripts/continues integration jobs, tools and utilities that use subversion we would like to switch from svn:// to http:// gradually by running both Apache and svnserve for a short period.
We have several repositories and are using svn:exsternals to link projects both between repositories and within a repository. All repositories are on the same server. Lets say that we have the repositories Repo1 and Repo2 and they are running on the SrcServer. Accessing Repo1 will be done using svn://SrcServer/Repo1 or http://SrcServer/svn/Repo1 (the svn part is from the Location element created by Subversion Edge in httpd.conf). This works fine. When we link projects with svn:externals we use relative paths. For example we could link from a project in Repo1 to Proj1 also in Repo1 using ^/Proj1. This also works fine the URL will be translated to svn://SrcServer/Repo1/Proj1 or http://SrcServer/svn/Repo1/Proj1. The problem occurs when we want to link to a project in a different repository. For example we could link from a project in Repo1 to Proj2 in Repo2 using /Repo2/Proj2. The URL will be translated to svn://SrcServer/Repo2/Proj2 or http://SrcServer/Repo2/Proj2. The svn: URL is correct but the http: URL is missing the svn part. I can see 2 possible solutions to this: 1: Drop using svn: and http: at the same time and add the svn part to the relative URLs.when switching to http:. 2: hack the generated httpd.conf file and use a Location element without the svn part. I don't like any of these solutions. Solution1 means doing a big bang that will be difficult to handle. I don't know if solution 2 is possible at all (never used Apache before). The Apache server is handling more than one application (like viewvc) and moving Subversion to the root doesn't sound like a good solution. Is there a way to use relative URLs so that linking between repositories on the same server will work for this case? Using the ^ subversion will add the svn part of the URL so it must know how to decode the different parts of the URL. Is this a bug in the handling of the / (relative to the root URL of the server) or should there be a syntax for saying relative to the repository parent path? Regards Jarle Jacobsen