2012/3/8 Jarle Jacobsen <jarle.jacob...@gmail.com>: > 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?
If you are in Repo1 then an external starting with "^/../Repo2/" addresses the second repository. Best regards, Konstantin Kolinko