[svn.haxx.se] · SVN Dev · SVN Users · SVN Org · TSVN Dev · TSVN Users · Subclipse Dev · Subclipse Users · this month's index

Re: SVN API

From: Ben Collins-Sussman <sussman_at_collab.net>
Date: 2003-09-11 16:03:54 CEST

"Ronald Cannes" <roncannes@hotmail.com> writes:

> >From: Ben Collins-Sussman <sussman@collab.net>
> >"Ronald Cannes" <roncannes@hotmail.com> writes:
> >
> [...]
> >First... whenever the svn client contacts the network, it opens a URL
> >with a certain schema: either file:///, http(s)://, or
> >svn(+tunnel)://. The assumption is that the URL *is* a repository
> >already. There's no concept of the svn client "generically contacting
> >an svn server". The server-process is *implied* within the idea of
> >"connecting to a repository URL". Depending on the URL, the server
> >process might be Apache, or svnserve, or no server at all (in the case
> >of file:///).
>
> In case of svn+x:// and http:// the server process would CRUD the
> repos-index file. In case of the file:// "protocol", the client
> library would do it. Most of that code would be shared, IMO.

No, Apache cannot CRUD the repos-index file, because there's no
guarantee that mod_dav_svn will even be activated.

I don't think you understand me. For example, have you set up
mod_dav_svn yet? The 'subversion-aware' area is defined by an
httpd.conf <Location> block.

So if the client sent a command like

    $ svn list-repos http://hostname/

...it would be sending some sort of custom http request (specific to
svn) to the path "/" on hostname. But what if "/" isn't aware of
subversion? What if the subversion <Location> is something like
"/svn" or "/repositories" or "/bloo/blim/blam"? You're just going to
get an error back.

In order for svn to operate against an http server, it needs to send
an http request to a subversion-aware URL. And there's no way for a
user to know what that is: it changes from site to site, on the whim
of every administrator. It's a chicken and egg problem.

Hence the need to open a "generic" connection to an svn server.
That's not possible with Apache, and that's why I was blabbing about a
Omniscient Master Daemon running on some predetermined port.

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org
Received on Thu Sep 11 16:04:57 2003

This is an archived mail posted to the Subversion Dev mailing list.

This site is subject to the Apache Privacy Policy and the Apache Public Forum Archive Policy.