You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@subversion.apache.org by Itamar O <it...@gmail.com> on 2010/02/11 05:31:23 UTC
Fwd: Serving internal SVN path via Apache
Relocating the question to the correct mailing list + clarification:
I am not talking about serving multiple repositories with SVNParentPath.
I have a single repository with the following layout:
root (@ /var/svn/repos)
|- projA
|- projB
|- ...
Each project has its own virtual host on Apache,
with its own DNS's (e.g. www.projA.com & svn.projA.com).
I want that the svn.projA.com virtual host will be directed to root/projA,
so that users of projA SVN are not even aware of other projects.
Is this possible?
Thanks,
Itamar O.
---------- Forwarded message ----------
From: Itamar O <it...@gmail.com>
Date: Wed, Feb 10, 2010 at 11:00 PM
Subject: Serving internal SVN path via Apache
To: dev@subversion.apache.org
Is there a way to configure Apache to serve a "scoped" repository?
e.g., if my repository root is at /var/svn/repos,
and I have top-level project-structure,
I want something like:
<Location /projA>
DAV svn
SVNPath /var/svn/repos/projA
# (this doesn't work..)
# Maybe something like "SVNPath /var/svn/repos" & "SVNScope projA" ?
</Location>
Thanks,
Itamar O.
Re: Fwd: Serving internal SVN path via Apache
Posted by Neels J Hofmeyr <ne...@elego.de>.
Itamar O wrote:
> Thanks Neels,
> Just tried that.
> When accessing svn.proja.com <http://svn.proja.com> from a browser it
> worked fine.
> But checkout & list on svn.proja.com <http://svn.proja.com> failed with
> the message:
> "/svn/projA/!svn/vcc/default path not found"
Heh, of course, sorry for the stupid suggestion: the client needs to know
the server's root URL. That's not because it needs access to the root of the
file tree stored *in* your repository, but because it needs access to the
proper communication interfaces, which work relative to the repository root.
Can't work.
So I guess the only way is that svn.proja.com actually points to a
repository root, which would imply that you need a separate repository per
project.
At apache.org, we have repos URLs like
http://svn.apache.org/repos/asf/<project-name>/
(e.g. 'httpd', 'subversion', ...)
You decide. :)
~Neels
>
> Any ideas?
>
> On Thu, Feb 11, 2010 at 2:27 PM, Neels J Hofmeyr <neels@elego.de
> <ma...@elego.de>> wrote:
>
> Itamar O wrote:
> > Relocating the question to the correct mailing list + clarification:
> >
> > I am not talking about serving multiple repositories with
> SVNParentPath.
> > I have a single repository with the following layout:
> > root (@ /var/svn/repos)
> > |- projA
> > |- projB
> > |- ...
> >
> > Each project has its own virtual host on Apache,
> > with its own DNS's (e.g. www.projA.com <http://www.projA.com>
> <http://www.projA.com> &
> > svn.projA.com <http://svn.projA.com> <http://svn.projA.com>).
> >
> > I want that the svn.projA.com <http://svn.projA.com>
> <http://svn.projA.com> virtual host will
> > be directed to root/projA,
> > so that users of projA SVN are not even aware of other projects.
> >
> > Is this possible?
>
> What comes to my mind is a URL rewrite in apache before it hits the DAV
> (google for some beginners' tutorial for mod_rewrite). i.e. httpd-wise
> redirect svn.proja.com <http://svn.proja.com> to
> your.main.server/repos/sub/folder/proja.
>
> Not sure if there will be side problems appearing. Technically, the
> user is
> then via mod_rewrite not able to ask for URLs other than below
> proja/, while
> the repository would still allow that if any got through.
>
> It's hacky ;)
> Not sure if there's a better way other than having dedicated
> repositories
> per project (which is also an option).
>
> ~Neels
>
>
> >
> > Thanks,
> > Itamar O.
> >
> > ---------- Forwarded message ----------
> > From: *Itamar O* <itamarost@gmail.com <ma...@gmail.com>
> <mailto:itamarost@gmail.com <ma...@gmail.com>>>
> > Date: Wed, Feb 10, 2010 at 11:00 PM
> > Subject: Serving internal SVN path via Apache
> > To: dev@subversion.apache.org <ma...@subversion.apache.org>
> <mailto:dev@subversion.apache.org <ma...@subversion.apache.org>>
> >
> >
> > Is there a way to configure Apache to serve a "scoped" repository?
> > e.g., if my repository root is at /var/svn/repos,
> > and I have top-level project-structure,
> > I want something like:
> > <Location /projA>
> > DAV svn
> > SVNPath /var/svn/repos/projA
> > # (this doesn't work..)
> > # Maybe something like "SVNPath /var/svn/repos" & "SVNScope projA" ?
> > </Location>
> >
> > Thanks,
> > Itamar O.
> >
>
>
Re: Fwd: Serving internal SVN path via Apache
Posted by Itamar O <it...@gmail.com>.
Thanks Neels,
Just tried that.
When accessing svn.proja.com from a browser it worked fine.
But checkout & list on svn.proja.com failed with the message:
"/svn/projA/!svn/vcc/default path not found"
Any ideas?
On Thu, Feb 11, 2010 at 2:27 PM, Neels J Hofmeyr <ne...@elego.de> wrote:
> Itamar O wrote:
> > Relocating the question to the correct mailing list + clarification:
> >
> > I am not talking about serving multiple repositories with SVNParentPath.
> > I have a single repository with the following layout:
> > root (@ /var/svn/repos)
> > |- projA
> > |- projB
> > |- ...
> >
> > Each project has its own virtual host on Apache,
> > with its own DNS's (e.g. www.projA.com <http://www.projA.com> &
> > svn.projA.com <http://svn.projA.com>).
> >
> > I want that the svn.projA.com <http://svn.projA.com> virtual host will
> > be directed to root/projA,
> > so that users of projA SVN are not even aware of other projects.
> >
> > Is this possible?
>
> What comes to my mind is a URL rewrite in apache before it hits the DAV
> (google for some beginners' tutorial for mod_rewrite). i.e. httpd-wise
> redirect svn.proja.com to your.main.server/repos/sub/folder/proja.
>
> Not sure if there will be side problems appearing. Technically, the user is
> then via mod_rewrite not able to ask for URLs other than below proja/,
> while
> the repository would still allow that if any got through.
>
> It's hacky ;)
> Not sure if there's a better way other than having dedicated repositories
> per project (which is also an option).
>
> ~Neels
>
>
> >
> > Thanks,
> > Itamar O.
> >
> > ---------- Forwarded message ----------
> > From: *Itamar O* <itamarost@gmail.com <ma...@gmail.com>>
> > Date: Wed, Feb 10, 2010 at 11:00 PM
> > Subject: Serving internal SVN path via Apache
> > To: dev@subversion.apache.org <ma...@subversion.apache.org>
> >
> >
> > Is there a way to configure Apache to serve a "scoped" repository?
> > e.g., if my repository root is at /var/svn/repos,
> > and I have top-level project-structure,
> > I want something like:
> > <Location /projA>
> > DAV svn
> > SVNPath /var/svn/repos/projA
> > # (this doesn't work..)
> > # Maybe something like "SVNPath /var/svn/repos" & "SVNScope projA" ?
> > </Location>
> >
> > Thanks,
> > Itamar O.
> >
>
>
Re: Serving internal SVN path via Apache
Posted by Neels J Hofmeyr <ne...@elego.de>.
Sebastian Grewe wrote:
> If you have svn.proja.com available to serve the single repository
> proj-a the use <Location /> instead of Proj-a. That way that virtualhost
> only serves one repository wihout users suspecting additional repositories.
Which implies to have separate repositories per project, yes. I think the
point was that there is one large combined repository, not separate ones...
~Neels
>
> That's how I set it up on my sites.
>
> Cheers,
> Sebastian
Re: Fwd: Serving internal SVN path via Apache
Posted by Neels J Hofmeyr <ne...@elego.de>.
Itamar O wrote:
> Relocating the question to the correct mailing list + clarification:
>
> I am not talking about serving multiple repositories with SVNParentPath.
> I have a single repository with the following layout:
> root (@ /var/svn/repos)
> |- projA
> |- projB
> |- ...
>
> Each project has its own virtual host on Apache,
> with its own DNS's (e.g. www.projA.com <http://www.projA.com> &
> svn.projA.com <http://svn.projA.com>).
>
> I want that the svn.projA.com <http://svn.projA.com> virtual host will
> be directed to root/projA,
> so that users of projA SVN are not even aware of other projects.
>
> Is this possible?
What comes to my mind is a URL rewrite in apache before it hits the DAV
(google for some beginners' tutorial for mod_rewrite). i.e. httpd-wise
redirect svn.proja.com to your.main.server/repos/sub/folder/proja.
Not sure if there will be side problems appearing. Technically, the user is
then via mod_rewrite not able to ask for URLs other than below proja/, while
the repository would still allow that if any got through.
It's hacky ;)
Not sure if there's a better way other than having dedicated repositories
per project (which is also an option).
~Neels
>
> Thanks,
> Itamar O.
>
> ---------- Forwarded message ----------
> From: *Itamar O* <itamarost@gmail.com <ma...@gmail.com>>
> Date: Wed, Feb 10, 2010 at 11:00 PM
> Subject: Serving internal SVN path via Apache
> To: dev@subversion.apache.org <ma...@subversion.apache.org>
>
>
> Is there a way to configure Apache to serve a "scoped" repository?
> e.g., if my repository root is at /var/svn/repos,
> and I have top-level project-structure,
> I want something like:
> <Location /projA>
> DAV svn
> SVNPath /var/svn/repos/projA
> # (this doesn't work..)
> # Maybe something like "SVNPath /var/svn/repos" & "SVNScope projA" ?
> </Location>
>
> Thanks,
> Itamar O.
>