您的位置:首页 > 运维架构 > Linux

在linux(Ubuntu)下安装subversion

2011-03-22 11:07 316 查看
1。安装subversion和apache2的组件(已经认为您已经安装了apache2),

sudo apt-get install subversion subversion-tools  libapache2-svn


在/etc/apache2/mods-enabled中会多出来一下几个链接文件(实际文件在mods-available中,我们不需要去管,只需要关注enabled目录就成):

dav_fs.load dav_svn.conf dav_fs.conf dav.load dav_svn.load

2。建立svn数据库

sudo svnadmin create /var/svn

ls /var/svn

你将得到这样的结果,则说明建立成功

conf dav db format hooks locks README.txt

3。配置apache

cd /etc/apache2/mods-enabled
sudo vi dav_svn.conf

按照提示去掉一些文件注释,最终的文件看起来如下

# dav_svn.conf - Example Subversion/Apache configuration
#
# For details and further options see the Apache user manual and
# the Subversion book.

#  ...
# URL controls how the repository appears to the outside world.
# In this example clients access the repository as http://hostname/svn/ 
# Uncomment this to enable the repository,
DAV svn

# Set this to the path to your repository
SVNPath /var/svn

# The following allows for basic http authentication.  Basic authentication
# should not be considered secure for any particularly rigorous definition of
# secure.

# to create a passwd file
# # rm -f /etc/apache2/dav_svn.passwd
# # htpasswd2 -c /etc/apache2/dav_svn.passwd dwhedon
# New password:
# Re-type new password:
# Adding password for user dwhedon
# #

# Uncomment the following 3 lines to enable Basic Authentication
AuthType Basic
AuthName "Subversion Repository"
AuthUserFile /etc/apache2/dav_svn.passwd

# Uncomment the following line to enable Authz Authentication
# AuthzSVNAccessFile /etc/apache2/dav_svn.authz

# The following three lines allow anonymous read, but make
# committers authenticate themselves.

Require valid-user

或者象这样来实现独立的域名情况:

ServerName svn.luochunhui.com
DocumentRoot /var/svn

DAV svn
SVNPath /var/svn
AuthType Basic
AuthName "Subversion Repository"
AuthUserFile /etc/apache2/dav_svn.passwd

Require valid-user

4。建立密码文件
建立第一个用户需要加-c参数

sudo htpasswd2 -c /etc/apache2/dav_svn.passwd username


输入两次密码
建立其他用户:

sudo htpasswd2 /etc/apache2/dav_svn.passwd username2


注意没有加-c,加-c的话会清除掉以前存在的密码。
如果username2为已存在用户,那这句命令的意义就是修改密码

5.重启apache

sudo apache2 -k restart


如果一切正常的话,使用浏览器打开http://127.0.0.1/svn 应该看到如下信息

Revision 0: /
Powered by Subversion version 1.3.1 (r19032).

OK,安装完成
你可以对他进行一些import,commit等操作了

导入版本的文件框架

mkdir -p tmp/lab.luochunhui.com/trunk tmp/eemap/trunk #如果你有其他已经写好的需要一起导入的文件,cp过来让在相应的trunk目录下,然后下一步。
svn import tmp http://127.0.0.10/ #更具提示输入message信息和用户,密码。

我在实验时发现有权限问题,这是你可能需要修改/var/svn的权限为可读写

sudo chmod -R 777 /var/svn

然后再继续执行上面的import操作。
现在使用浏览器打开http://127.0.0.10,可以得到

Revision 1: /

* eemap/
* lab.luochunhui.com/

继续checkout和commit吧,祝你有一个愉快的subversion。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: