We take pride in your success. We let our positivity drive us, day in and out. Talk to us at Mindfire to know us more.

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.

top

News & Updates

  • May 12

    We are attending Servoy World Conference'2012 at Amsterdam

  • April 12

    Mindfire attends Bug deBug conference & to attend Step Auto conference

Let us Connect!

privacy

copyright (c) Mindfire Solutions 2007-2012. Login