5 minutes to set up a subversion server in the cloud

Launch EC2 instance

We are going to run an EC2 instance of the EBS amazon linux image and install apache Web server with subversion.
Go to http://aws.amazon.com/fr/amazon-linux-ami/ and find out the best EBS Linux AMI for you.
Personally I will run the ami-827540f6 because I’m in Europe.
Run an instance of the image you choosed and ssh your server with ec2-user.
Install subversion

Install subversion, apache and mod_dav_svn:

# sudo yum �Cy install mod_dav_svn

Edit the Apache configuration file for subversion:

# sudo vi /etc/httpd/conf.d/subversion.conf

Replace subversion.conf content by:


LoadModule dav_svn_module     modules/mod_dav_svn.so
LoadModule authz_svn_module   modules/mod_authz_svn.so
<Location /repos>
   DAV svn
   SVNParentPath /var/www/svn
   # Limit write permission to list of valid users.
   AuthType Basic
   AuthName "Authorization Realm"
   AuthUserFile /var/www/svn-auth/passwd
   AuthzSVNAccessFile  /var/www/svn-auth/access
   Require valid-user
</Location>

Create the directory which will contain the subversion repository:

# sudo mkdir /var/www/svn

Create the directory which will contain the permissions files.

 # sudo mkdir /var/www/svn-auth

Create the permission file:

# sudo vi /var/www/svn-auth/access
[/]
xiaoming = rw

Note: Replace <theUser> by the login you want to use to access your repository.
<theUser> will have read write access to all repositories.
It is possible to setup authorization by group or user for each repository.
Create the password file:

# sudo htpasswd -cm /var/www/svn-auth/passwd  xiaoming
# sudo htpasswd -m /var/www/svn-auth/passwd  xiaohong

Note: Replace xiaoming by the login you want to use to access your repository.
Create a repository (here project1):

# cd /var/www/svn
# sudo svnadmin create project1

Change files authorization:

# sudo chown -R apache.apache /var/www/svn /var/www/svn-auth
# chmod 600 /var/www/svn-auth/access /var/www/svn-auth/passwd

Start apache web server:

# sudo service httpd start

Note: to restart server use # sudo service httpd restart
Test subversion

Now subversion and apache should work.
Open a web browser and point to the URL : http://<Public DNS of your EC2 instance>/repos/project1
You should be prompted for your credential (Enter <theUser> <thePassword>) before accessing the repository
Subversion client

We are now going to interact with our repository from a windows PC.
If you don’t have a subversion client installed on your PC then you can install one from http://www.sliksvn.com/en/download .
You can test your subversion client from your PC by listing files on your repository:

svn ls http://<Public DNS of your EC2 instance>/repos/project1

The first time we often want to import some files to the repository:

svn import -m "Initial import." <path of the reposity where are the files on your PC> http://<Public DNS of your EC2 instance>/repos/project1

你可能感兴趣的:(linux,SVN,server,cloud,Amazon)