Click here to Skip to main content
15,672,442 members
Please Sign up or sign in to vote.
3.00/5 (3 votes)
See more:
Current Need: Make SVN work in our shop.

Current skills: Last week I wrote and presented a course called "The Ten Minute SVN Expert", i.e., to show users how to set up Tortoise SVN and use it for individual source code control.

We did this with local repositories; i.e., on their laptops and notebooks and desktops.

GOOD: people can write, commit, and have courage to make mistakes.

BAD: one guy's disk fails and it's solarbanite time.

My boss has set up a far safer system on our big server with a redundant nightly backup and so on.

I have no clue what happens on the server side of this equation; as that was set up for us by a (now gone) grad student who was very good at getting things done quickly so that they work.

Now the server side software of SVN does not work. No clue what happened a month ago, but it just would not let anybody in.

We just changed offices and boss says that I will be useful if I fix this.

I look on the Tortoise SVN Site[^] where I found links to...

-- This, Subversion Edge, [^] From CollabNet
-- This, uberSVN, [^] from WanDisco
-- This, Visual SVN Server, [^] from Visual SVN

My boss REALLY wants an open source package; and I'm totally behind him all the way.

From reading the wording on these three websites mentioned above, I get a distinct feeling that I'm not really being led to what we're really after; i.e., a truly open source implementation the server side of the software.

If anyone reading here has seen this before and navigated it successfully, your suggestions will be read with great interest and appreciation.

I get the feeling that I'm not really headed toward a truly open source implementation of the server side of this.
Posted
Comments
ZurdoDev 22-Apr-13 16:34pm    
Sorry, what's the question?
C-P-User-3 22-Apr-13 16:45pm    
Are any of those three sites really offering a truly freeware package which is truly open source and will do the server side of the operation for the client side of Tortoise SVN ?

1 solution

Hello,

Subversion Edge should actually work for you. However if you want to go pure OpenSource way then follow the instruction (Windows 32-bit Platform Only)

  1. Grab Apache HTTPD 2.4 from here[^]
  2. Next Grab SVN from here[^]
  3. Open httpd-2.4.4-win32.zip in say 7-zip[^]. Extract the folder named Apache24 on to root folder of any drive
  4. Follow the documentation[^] to configure the HTTPD server and make sure it runs as a service
  5. Stop Apache Service
  6. Create a folder named SVN179 in the root folder of any drive
  7. Open svn-win32-1.7.9-ap24.zip in say 7-zip, extract the contents of folder named svn-win32-1.7.9 inside the zip into SVN179 folder created earlier.
  8. Copy following files from SVN179\bin folder to APACHE24\bin folder.

    • intl3_svn.dll
    • libapr-1.dll
    • libapriconv-1.dll
    • libaprutil-1.dll
    • libdb48.dll
    • libeay32.dll
    • libsasl.dll
    • libsvn_client-1.dll
    • libsvn_delta-1.dll
    • libsvn_diff-1.dll
    • libsvn_fs-1.dll
    • libsvn_ra-1.dll
    • libsvn_repos-1.dll
    • libsvn_subr-1.dll
    • libsvn_wc-1.dll
    • ssleay32.dll
  9. Next copy following files SVN179\bin folder to APACHE24\modules folder

    • mod_authz_svn.so
    • mod_dav_svn.so
    • mod_dontdothat.so
  10. Open APACHE24\conf\httpd.conf file in your favorite text editor. Change entry named DocumentRoot such that it will point to your APACHE24\htdocs folder. Then Locate the following entry and change it as shown below
    <Directory />
        AllowOverride none
        Require all denied
        # Add following lines
        Order allow,deny
        Allow from all
    </Directory>
    Add similar lines under the Directory entry for your DocumentRoot. Finally add following line at the end of the file
    Include conf/extra/subversion.conf
  11. Now create a file named subversion.conf in APACHE24\conf\extra folder. Paste following lines into it
    LoadModule  dav_module             modules/mod_dav.so
    LoadModule  dav_svn_module         modules/mod_dav_svn.so
    LoadModule  authz_svn_module       modules/mod_authz_svn.so
  12. Final step is to link the subversion with apache. To do this open subversion.conf file and add following entry, Feel free to change the paths as per your needs. I am assuming that your SVN repository is located on D:\SVNREPO folder.
    <Location /project1>
      DAV svn
      SVNPath D:/SVNREPO/project1
    </Location>


More information on setting up authentication can be found here[^]

Regards,
 
Share this answer
 
Comments
C-P-User-3 22-Apr-13 18:09pm    
Nice, Nice, Extra Nice ! Thank you. I am going to study this in detail.
C-P-User-3 22-Apr-13 18:52pm    
Okay, SVN was installed here about a year ago, and worked fine for months, then stopped working. The boss gave me server access and let me look around.

As of this moment, I have just looked, not touched.

From my novice examination, here's what appears to be happening.

On my desktop machine (away from the server) I rearranged my file tree to put the source files in better order.

On the server, the old file structure appears to be there. I determined this by using windows explorer and just following subdirectory trees.

Still, this does not explain why, all of a sudden, my Tortoise SVN application on my desktop cannot connect with the Server SVN application.

I welcome your (or anyone's) input.
Prasad Khandekar 23-Apr-13 1:12am    
The above steps will setup the sver server with http protocol. Are you using http protocol or svn protocol?

Regards,
C-P-User-3 23-Apr-13 12:10pm    
I'm not really sure which protocol we're using. I use windows explorer and right-click, and normally the http://123.456.789.012 appears automatically in the address box.

If it makes any difference, we are running Windows Server 2008 R2 Enterprise Edition (I hope I spelled it correctly and got the words in the proper order).

SVN is already on that server, it just quit working.

I altered the file httpd.conf in the Apache2-2 subdirectory.

It had the old IP address that we were using before we changed offices. We rearranged desks and computers and stuff.

I put the new IP address in that file, but that was all.

If a complete re-install would save me time and misery, I'm up for it.

I have this nagging suspicion that there is one setting somewhere that somehow got changed and that a 30 second file-open-flip-close will fix all our problems.

I am weighing that suspicion against the probability that I will spend ten times as many work hours trying to find that one file and setting than I will just re-installing the next upgrade.

I believe that we're on version 1.6 on the server and that I'm using 1.7 on the individual desktops. Boss put me on Windows 8 here and I know that I installed TortoiseSVN on this one, and it's version 1.7

I welcome better knowledge on this.

It shouldn't be too difficult find better knowledge than I have at this moment.
Prasad Khandekar 23-Apr-13 15:31pm    
From your description it appears that you are using SVN with an http server. I don't think you will require to reinstall. Which entry did you change. For Apache it's generally the Listen entry in httpd.conf file. From command prompt type httpd -t to ensure that all configurations are correct.

Last thing is to locate Location entry containing DAV Svn and comment out the following entries if present

AuthType Basic
AuthName “Subversion Repository”
AuthUserFile conf/dav_svn.passwd
AuthzSVNAccessFile conf/svnauthz
Require valid-user

Restart Apache service and navigate to the repository via web browser. If you are able to access the repository this way then you can try correcting the authentication & authorization setup.

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)



CodeProject, 20 Bay Street, 11th Floor Toronto, Ontario, Canada M5J 2N8 +1 (416) 849-8900