[ubuntu下安装svn]

 

安装SVN步骤

1、安装SVN server

 sudo apt-get install subversion

2、创建数据仓库

 svnadmin create /home/svn/project
 svnadmin create /home/svn/flash
 可以根据需要建立不同的数据仓库

3、启动svn网络服务

 svnserve -d -r /home/svn
其中 -d 参数让 svnserve 运行在后台,-r 参数限定了数据仓库,在网络上可以访问的地址。
/home/svn指定svn数据仓库存放的目录位置

4、设置svn: 方式的访问权限

 在每个数据仓库目录下都有一堆目录,进入 conf 并打开 svnserve.conf 这个文件,找到以下几行,
 并把前面的注解符号 ‘#’ 去掉,注意千万在每行的前面别留任何空格。
 anon-access = read
 auth-access = write
 password-db = passwd
其中 anon-access 和 auth-access 分别为匿名和有权限用户的权限,默认给匿名用户只读的权限。
但如果想拒绝匿名用户的访问,只需把 read 改成 none 就能达到目的。
password-db 后的 passwd 则为定义用户名及密码的文件路径。这个文件默认跟 snvserve.conf 在同一个目录,下面看看怎么配置 passwd文件中的内容。
[user]
# harry = harryssecret
# sally = sallyssecret
harry 和 sally 这两行分别定义了可以对 repo 进行写入的用户的用户名和密码。我们可以在下面加上自己的用户名和密码,比如
testsvn = tester
这样就给了用户 testsvn 往 repo 中写的权限。存盘退出后,svn 服务器就算正式可以运行了!
把所有需要管理的项目都放在 /home/svn这个目录下,像正常那样用 svnadmin create 命令建立数据仓库
这样就可以使用svn客户端通过svn://地址/数据仓库目录 的方式访问各个数据仓库了

5、在Apache 中部署Subversion

安装启用mod_dav 和 mov_dav_svn 这两个模块
 sudo apt-get install apache2 subversion libapache2-svn
确定 mod_dav 和 mod_dav_svn 被打开
 a2enmod dav dav_svn
修改 /etc/apache2/conf 下的 httpd.conf,加入如下代码:
<Location /svn>
DAV svn
SVNParentPath /home/svnproject
</Location>
这样就可以通过 http://地址url/svn 访问/home/svnproject下的数据仓库了

6、设定用户的权限和验证

htpasswd -cmb /home/passwdfile/passwords user1 pass1
注意/home/passwdfile这个目录必须存在
然后回到我们在 httpd.conf 中添加的代码,修改一下:
<Location>
DAV svn
SVNParentPath /home/svnproject
AuthType Basic
AuthName "Test Repository"
AuthUserFile /home/passwdfile/passwords
<LimitExcept GET PROPFIND OPTION REPORT>
Require valid-user
</LimitExcept>
</Location>
在这段代码的控制下,任何人都可以对 repo 进行 checkout,但只有 user1 才可以 commit
<LimitExcept> 的作用是控制 HTTP 请求,如果 HTTP 请求是 GET PROPFIND OPTION REPORT 中的一种,则不需要去验证用户
最后,你需要把 repo 所在的目录和文件的所有权都改成系统中操作 Apache 的用户,这样在 commit 的时候才会被 Apache 认可。
在 Ubuntu 中,这个用户叫 www-data
sudo chown -R www-data /home/svnproject
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值