IT软件
当前位置 :首页工程软件IT软件

Ubuntu下SVN服务器安装全解

来源: 作者: 时间:2011-10-29 点击:

1、安装Subversion
sudo apt-get install subversion

2、建立存储仓库
sudo mkdir /var/svn 
cd /var/svn
svnadmin create test
(test为你要取的仓库名称)
然后修改配置文件
sudo vim /var/svn/test/conf/svnserve.conf

svnserve.conf配置如下(注意:所有的行都必须顶格,否则报错)
[general]
anon-access = none
auth-access = write
password-db = passwd

svnserve.conf配置说明:
anon-access 和 auth-access 分别指定匿名和有权限用户的权限,默认给匿名用户只读的权限,如果想拒绝匿名用户的访问,只需把 read 改成 none 就能达到目的。password-db 后的 passwd 则为定义用户名及密码的文件路径。这个文件默认跟 snvserve.conf 在同一个目录。

然后修改密码文件
sudo vim /var/svn/test/conf/passwd
添加用户名=密码对,如:username=123456

3、导入版本库
把 /var/www/test 下的内容导入到版本号中:
sudo svn import -m "第一次导入" /var/www/test file:///var/svn/test
注意:(-m "第一次导入")不可少,否则无法导入

4、启动服务器
svnserve -d -r /var/svn --listen-host 192.168.1.103
注意:停止SVN服务器命令为killall svnserve

5、添加apache支持
首先为apache安装mod_dav和mod_dav_svn两个模块:
sudo apt-get install libapache2-svn

确定 mod_dav 和 mod_dav_svn 被打开:
a2enmod dav dav_svn

配置Apaache,打开httpd.conf
添加:
<Location /svn>
DAV svn
SVNParentPath /var/svn/
</Location>
保存配置并重启apache服务器,然后打开浏览器访问http://192.168.0.103/svn/test(注意test为你的仓库名称)就可以看到结果了!
这时任何人都可以访问,因此要设定用户的权限和验证。
首先为你的用户设定用户名和密码:
先为管理员添加一个帐号,
sudo htpasswd -cmb /home/gqy/passwords admin 123456
再增加一个帐号:
sudo htpasswd -mb /home/gqy/passwords gqy 123456
然后修改httpd.conf:
<Location /svn>
DAV svn
SVNParentPath /var/svn/
AuthType Basic #验证类型设置
AuthName "Please Auth your accout" #验证提示框
AuthUserFile /home/gqy/passwords #验证配置文件
Require valid-user
</Location>
添加时注意把#及其后面的注释内容删除掉,否则无法重启apache!
保存配置并重启apache服务器,然后打开浏览器访问http://192.168.0.103/svn/test这时就会跳出登陆框,然后输入上面的用户名密码就可以看到结果了!
注意:你需要把 版本根目录所在的目录和文件的所有权都改成系统中操作 Apache 的用户,否则会报以下错误:
Can't open file '/var/svn/operation/db/txn-current-lock': Permission denied
解决办法:
sudo chmod 0777 /var/svn -R
sudo chown www:www /var/svn -R
如果未单独配置Apache的用户,可不用操作chown

6、安装SVN客户端
Windows下的SVN客户端:下载TortoiseSVN安装包并安装即可,TortoiseSVN的官方下载地址是 http://tortoisesvn.net/downloads
Ubuntu下的SVN客户端:运行sudo apt-get install subcommander时就可以安装了

 

 

上一篇:
下一篇: 已经是最后一篇
最新评论共有 位网友发表了评论
发表评论
用户名: 密码: 游客发言不需要密码