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

RE: svn://

From: Jeremiah van Oosten <jpvanoosten_at_hotmail.com>
Date: Sat, 26 Jan 2008 13:47:57 +0100

The answer to that question depends on the type of OS you are using.

If you are using Windows NT/2000/XP, you can read this document: http://svn.collab.net/repos/svn/trunk/notes/windows-service.txt .

To summerize:

You can run svnserve as a service on Windows NT derived OS. You can install svnserve as a service using the SC command on a windows command line prompt (more on this later).
I have created a folder in my Subversion installation directory (I recommend you keep your SVN depots on a separate physical drive (or at least a different partition) than your OS - You don't want to accidently lose the depots the next time you have to reformat your HDD because Windows is getting too corrupt ;) For example, I have my OS installed at c:\WINDOWS, but I have my subversion depot at d:\Subversion\depot\. The "depot" folder is the root folder where you will store all your repositories (ie: repo1, repo2).
Then, create a batch script file that will create the windows service for you. This is what my batch file looks like (CreateService.bat):

        @echo off

        # Note: Subversion will run on default port 3690 when no port is specified.
        
        net stop subversion
        sc delete subversion
        sc create subversion binPath= "d:\subversion\bin\svnserve.exe --service --root ""D:\Subversion\depot\""" DisplayName= "SVN Service" depend= tcpip start= auto
        net start subversion
        
        PAUSE

(Make sure there are no line breaks in the line that reads "sc create ... start= auto"). Of course, you will have to substitute the paths for the correct location of where you installed subversion and where your depot directory actually is. And yes, all the quotation marks are necessary in a batch file.
You'll notice that I first stop and delete the service. That’s because you can't modify an existing service without deleting it first.

I also have a script to start, and stop the service (StartService.bat):

To start the service:

        @echo off

        net start subversion

        PAUSE

To Stop the service (StopService.bat):

        @echo off
        
        net stop subversion
        
        PAUSE

And to delete the service (DeleteService.bat):

        @echo off
        
        net stop subversion
        sc delete subversion
        
        PAUSE

If you wan't to create another service on the same computer, just change the service name from "subversion", to something else like "subversion2", but you'll have to add the "--listen-port" parameter so that you don't have two instances of svnserve that are listening on the same port. Then you would change your command to something like this:

        sc create subversion binPath= "d:\subversion\bin\svnserve.exe --service "--listen-port 3691 --root ""D:\Subversion\depot\""" DisplayName= "SVN Service" depend= tcpip start= auto

Creating a second service would be necessary if you have serveral repositories at different root depot locations.

Regarding the multiple depots with the same root depot location, do not make the root depot folder an SVN depot (in my case D:\Subversion\depot\), instead, add a subdirectory in the root folder and create a depot out of that.
For example: Create a subdirectory called "repo1" at d:\Subversion\depot\repo1\, then (I like to use TortoiseSVN), create the depot buy either right-clicking the subfolder in windows explorer and select "TortoiseSVN->Create Repository Here..." and select the file system type (I recommend FSFS), and your done. Or using the svnadmin command-line tool:
        svnadmin create d:\Subversion\deopt\repo1

You can then access your repository as an svn server from your local machine with the URL: svn://localhost/repo1

To set up a second repository, just create another subdirectory in the "d:\Subversion\depot" folder (lets call it "repo2") and the use the svnadmin command again:
        svnadmin create d:\Subversion\deopt\repo2

Then, you can already access it using the URL: svn://localhost/repo2.

Easy?

Regards,

Jeremiah van Oosten

-----Original Message-----
From: alexus [mailto:alexus_at_gmail.com]
Sent: Friday, January 25, 2008 9:09 PM
To: users_at_subversion.tigris.org
Subject: svn://

hi

is there a way to be able to run svnserver (as stand alone) not
through http(apache) and being able to access multiple repos at the
same time?

svn://127.0.0.1/repo1 svn://127.0.0.1/repo2

in another words where repo1 and repo2 is two different repos

-- 
http://alexus.org/
---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe_at_subversion.tigris.org
For additional commands, e-mail: users-help_at_subversion.tigris.org
---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe_at_subversion.tigris.org
For additional commands, e-mail: users-help_at_subversion.tigris.org
Received on 2008-01-26 13:47:26 CET

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

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