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

Re: Apache integration

From: Ryan Schmidt <subversion-2006Q1_at_ryandesign.com>
Date: 2006-02-10 19:19:23 CET

On Feb 10, 2006, at 18:30, N G wrote:

>>> I have a developer type plan with a hosting service which allows me
>>> to log
>>> into the server through SSH and configure Apache server. However, I
>>> don't
>>> think they will allow me to install Subversion server on that
>>> machine. I
>>> don't know much about Apache yet, but Is it possible to install
>>> just the
>>> subversion mod on it without installing the Subversion server on the
>>> machine. In other words, would the subversion mod pretty much
>>> function as
>>> the subversion server for me?
>>
>> There are several different ways to serve a repository. One is
>> through the custom svnserve server. Another is through the
>> mod_dav_svn Apache2 module.
>
> So, I take it you disagree with Lares?

I stand by what I said. But Lares isn't wrong either. Let's
incorporate Lares's remarks here:

>> <cut> would the subversion mod pretty much function as
>> the subversion server for me?
>
> Short answer, no.
>
> Long answer, no.
> The mod is just the http interface IIRC. You need to have svn on the
> machine.

"svn" is many things. So let's be very specific. When you download
the Subversion source code and build it, you get the "svn" command
line client program, the "svnadmin," "svnversion" and "svnlook"
utility programs, the "svnserve" server program, and, if you ask it
to, the "mod_dav_svn" Apache2 module. Each of these programs also
link to a handful of Subversion libraries which this process will
install.

In Lares's remarks, "svn" then must mean the Subversion libraries,
which, yes, must be present.

>> If your hosting provider uses Apache2 (Apache1 won't work) and allows
>> you to plug in custom modules and allows you to make custom entries
>> in the httpd.conf (most hosting providers I know qualify for none of
>> these), then you could use Apache to serve your repository. If they
>> don't normally offer that, maybe ask them if they'd be willing to add
>> it on their end, since it's a useful feature.
>
> As far as I see, they I am allowed to edit httpd.conf, but not allowed
> to even see the contents of htpasswd. I figure I'll deal with that
> later since they do allow (through web interface) to set a password on
> a directory served through Apache.
>
>> If they won't, then they probably wouldn't be too keen on opening a
>> port in the firewall and having the svnserve process running either.
>>
>> But you could possibly still make it work through svn+ssh protocol.
>
> svn+ssh would actually be easier for me at this point, but wouldn't
> that require me to install Subversion on that machine? I can't see how
> they would be too happy with users installing stuff...

If installed as root, all of Subversion's parts can go anywhere, for
example into the OS's standard locations like /usr or /usr/local, and
if your ISP were to provide Subversion, that's probably where they'd
be. If your provider doesn't and won't provide it, you can compile it
yourself in your home directory, since you said you have SSH access.
Then the programs and libraries are in a location you specify with
the --prefix parameter to the ./configure script, for example /home/
you/programs or whatever. You could then use svnadmin to set up a
repository on the server, and access it via svn+ssh. svn+ssh uses the
SSH protocol, which you have access to, so there's no need for your
provider to open any additional ports. And svn+ssh only starts the
svnserve process when it's needed, and closes it again right away
afterwards, so there wouldn't be another permanently-running process
on the machine.

The setup process for the various servers is described in the book.
In particular if you want to try svn+ssh you might find the SSH
Configuration Tricks section useful:

http://svnbook.red-bean.com/en/1.1/ch06s03.html#svn-ch-6-sect-3.5

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@subversion.tigris.org
For additional commands, e-mail: users-help@subversion.tigris.org
Received on Fri Feb 10 19:28:15 2006

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