Subversion

Subversion is a open-source version control tool. It is open-source and distributed as free software over the internet. It comes by default with most of the GNU/Linux distributions, so it might be already installed on your system. Subversion used to maintain current and historical versions of files such as source code, web pages, and documentation.

Installing Subversion:

Installing Subversion on Linux machine with operating system CentOS 5.11 x64 bit.

1) By using YUM, the command is likely to be:
1
sudo yum install subversion sudo yum install mod_dav_svn
2) Now to verify which version is installed on the system, you can run following command
1
svnserve --version
3) For specific version installation of Subversion kindly download repository from subversion. Start/Stop Subversion process from server:
1
2
3
 sudo /etc/init.d/svnserve status
 sudo/etc/init.d/svnserve start
 sudo /etc/init.d/svnserve stop
4) Apart from three of these service you can use same script for
1
start|stop|status|restart|condrestart|try-restart|reload|force-reload
5) You can check svnserve status or you can check process are running on server for subversion service by issuing following command and output will be as below:
1
[root@vpn14 etc]# ps -ef|grep svnserve root 25077 1 0 17:15 ? 00:00:00 /usr/bin/svnserve --daemon --pid-file=/var/run/svnserve.pid root 25080 24389 0 17:15 pts/0 00:00:00 grep svnserve

Creating Repository : After Subversion installed successfully, you have to create a repository. The command utility used in this is called svnadmin and is tool used for server side operations.

1) Create a directory for repository by running following command:
1
mkdir -p REPOS_PATH mkdir -p /usr/local/subversion/ always use absolute path while using --parents options of mkdir.
2) Create a repository on a given path by running the following command:
1
2
svnadmin create REPOS_PATH 
svnadmin create /usr/local/subversion/repository

Access to the repository is controlled by file permissions and the user referenced for accessing the repository through the SVN client. Ensure that user and group permissions for all files in the new repository reflect the type of access control that you want to have over the repository contents.

By default, anonymous, read-only access is enabled for a new repository. This means that anyone with SSH access, regardless of repository permissions settings, can check out repository files. You can modify this in the REPOS_PATH/conf/svnserve.conf file.