How to install and configure svnserve on Snow Leopard

Abstract:
Source Code Management (SCM) is very important in Software Development. If two or more developers are working on the same project at the same time, then its very important that they should maintain one version control system to sync with each other to avoid some simple but irritable problems during the software development.

In this paper I am going to explain how to configure svnserve on server machine and how to create a repository for maintaining source code and how to configure SCM for a project and how to do check ins/checkouts ..etc on MAC OS 10.6 Snow Leopard.

System Requirements:
MAC OS 10.6 Snow Leopard
Xcode (already installed on the machine)

svnserve download link:
http://www.open.collab.net/downloads/community/

Before going to install svnserve:
Install Xcode on the machine
Download Subversion-1.6.12-10.6.x.dmg file

How to configure svnserve:

#1.
Double click on Subversion-1.6.12-10.6.x.dmg file. Then below window will be open. Double click on Subversion-1.6.12 in the below window.
Subversion

#2.
Follow the instructions there in the installer and finally svnserve will be installed in /opt/subversion folder. See below pic.
img

#3.
Create a new file org.tigris.subversion.svnserve.plist in /Library/LaunchDaemons folder.
svnserve

#4:
Open the above file with TextEdit and copy the below text into the file and save it.

-----------------------------------------copy from below -----------------------------------------------------

 

<?xml version="1.0" encoding="UTF-8"?>

<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN"

"http://www.apple.com/DTDs/PropertyList-1.0.dtd">

<plist version="1.0">

<dict>

<key>Debug</key>

<false/>

<key>Disable</key>

<false/>

<key>GroupName</key>

<string>staff</string>

<key>Label</key>

<string>org.tigris.subversion.svnserve</string>

<key>OnDemand</key>

<true/>

<key>Program</key>

<string>/opt/subversion/bin/svnserve</string>

<key>ProgramArguments</key>

<array>

<string>svnserve</string>

<string>--inetd</string>

<string>--root=/Users/PresentUser/Documents/Repositories</string>

</array>

<key>ServiceDescription</key>

<string>SVN Version Control System</string>

<key>Sockets</key>

<dict>

<key>Listeners</key>

<array>

<dict>

<key>SockFamily</key>

<string>IPv4</string>

<key>SockServiceName</key>

<string>svn</string>

<key>SockType</key>

<string>stream</string>

</dict>

<dict>

<key>SockFamily</key>

<string>IPv6</string>

<key>SockServiceName</key>

<string>svn</string>

<key>SockType</key>

<string>stream</string>

</dict>

</array>

</dict>

<key>Umask</key>

<integer>2</integer>

<key>UserName</key>

<string>PresentUser</string>

<key>inetdCompatibility</key>

<dict>

<key>Wait</key>

<false/>

</dict>

</dict>

</plist>

 -----------------------------------------copy till here -------------------------------

Notes:

The highlighted PresentUser is the present user of the system.

/Users/PresentUser/Documents/Repositories is the place where svnserve expect us to create

our repositories

If Repositories folder is not there in /Users/PresentUser/Documents folder, then create a

Repositories”folder there.

#5:

Create an actual repository inside Repositories by executing the below command.

svnadmin create /Users/PresentUser/Documents/Repositories/sourcecode

 svnserve

#6:

Open /Users/PresentUser/Documents/Repositories/sourcecode/conf/svnserve.conf file in TextEdit.

By default the anon-access filed is written as anon-access = read. Modify it to anon-access = none.
svnserve

#7:

Open /Users/PresentUser/Documents/Repositories/sourcecode/conf/svnserve.conf file in TextEdit.

By default the password-db filed is like below
# password-db = passwd

Change it to like below (delete #, delete space between # and password-db)
password-db = passwd

svnserve

#8:
Open passwd file in TextEdit from ../Repositories/sourcecode/conf/ folder
svnserve

Simply replace those entries with username = password pairs of your own and save your changes,and you should be able to access your repository and the username/password pairs you wrote in this file.

svnserve

#9:
Restart the system

#10:
Execute the below line on Terminal
sudo launchctl load /Library/LaunchDaemons/org.tigris.subversion.svnserve.plist
If the above command is not working or getting any errors then try the below command
sudo launchctl load -F /Library/LaunchDaemons/org.tigris.subversion.svnserve.plist

#11:
Execute the below command
sudo launchctl start org.tigris.subversion.svnserve

Now, svnserve is configured.

How to configure the SCM repositories:

#12:
Open Xcode

#13:
Go to SCM in the Xcode menu
svnserve

#14:
Click on Configure SCM Repositories. Given below window will be opened.Give the repository name (ex: iPhoneApps) and click on OK button.

svnserve

#15:
 The following window will be opened after clicking on OK button.
svnserve

Enter the following details …

- Scheme: svn/file
- Host: server IP address (on which repository is created)
- Path: Repository path
- Port:
- Username: username to access the svn server
- Password: password to access the svn server


Click on Apply button and see weather the connection established or not. If the status is Äuthenticated”then connection is established. Otherwise there is some error in the settings of above fields.

Click on OK button.

How to configure SCM for the current project:

#16:
Open any project and Click on SCM -> Configure SCM For This Project. See the screenshot attached below.

svnserve

#17:
Clicking on “Configure SCM For This Project” will open the window displayed below

svnserve

#18:
Click on Configure Roots & SCM.

svnserve

#19:
Below window will be opened.

svnserve

 #20:
Click on Repository section (i.e.., click on None combo box). Combo Box opens, select already created repository there. In this case, select iPhoneApps. See below screenshot

svnserve

Click on OK button.

Now, the current project is successfully checked-in into the repository.

Contact Us

*

*

Captcha Image

Why Choose Us

Wide Portfolio of Services


Domain Intensive Value Proposition


Technological Excellence across platforms 


Avail competitive pricing (Reduce 70% cost, ensure 100% quality)


Get 4 weeks complimentary Risk-Free Trial*


We Build Innovative Applications: Browse through our Intellectual Property

Client Testimonial

StartQuotes"Mindfire has enabled us to reduce costs and increase productivity. The team we have provides fast and reliable development support. We are very happy with the level of service from Mindfire." - Ken Morency, IceFire Studios Corp.

More Client Testimonials

News & Updates

  • December 18

    Third Edition: Tech Bhubaneswar

  • July 18

    Participation in Test Autothon, DSTC 2018

Let us Connect!

Awards and Achievements

Red Herringcolor DeloitteFast50 DB ZInnov1   Nascome  DB Stpi

This site uses cookies. We respect your privacy.copyright (c) Mindfire Solutions 2007-2018. Login