ubuntu安装SVN服务器。
1. 安装
sudo apt-get install subversion
sudo mkdir svn
sudo mkdir xiaoqu
sudo chmod -R 777 xiaoqu
sudo chmod -R 777 xiaoqu
sudo svnadmin create xiaoqu
xiaoqu文件夹绝对路径:/home/gopain/svn/xiaoqu.我的用户为gopain。
3. 访问权限设置
修改xiaoqu文件夹下的conf文件夹下文件:passwd,authz,svnserve.conf文件。
passwd是用户和密码管理。
authz为登录认证方式。
svnserve.conf为访问权限设置。
编辑svnserve.conf文件,把如下两行取消注释
password-db = password
authz-db = authz
# [general]
anon-access = read
auth-access = write
password-db = passwd
其中 anon-access 和 auth-access 分别为匿名和有权限用户的权限,默认给匿名用户只读的权限,但如果想拒绝匿名用户的访问,只需把 read 改成 none 就能达到目的。
password-db = password
authz-db = authz
# [general]
anon-access = read
auth-access = write
password-db = passwd
其中 anon-access 和 auth-access 分别为匿名和有权限用户的权限,默认给匿名用户只读的权限,但如果想拒绝匿名用户的访问,只需把 read 改成 none 就能达到目的。
编辑passwd文件:
此处的用户和密码不能直接写入,需要加密密码,以便于后期配置apacha2来访问svn(http协议)。
具体操作:
sudo htpasswd -c svn/xiaoqu/conf/passwd gopain
-c命令是创建一个passwd文件,如果该文件已经存在,会被重写。
所以,添加多个用户,需要使用:
sudo htpasswd -mb svn/xiaoqu/conf/passwd svnuser 123
编辑authz文件:
[groups]
admin = gopain
[/]
@admin=rw
* = r
至此,svn服务器已经搭建成功。
admin = gopain
[/]
@admin=rw
* = r
至此,svn服务器已经搭建成功。
4. 启动服务
svnserve -d -r /home/gopain/svn
描述说明[摘抄]:
-d 表示svnserver以“守护”进程模式运行
-r 指定文件系统的根位置(版本库的根目录),这样客户端不用输入全路径,就可以访问版本库
HTTP访问[apache2配置]
为了让svn服务器在组员开发时使用eclipse里面的svn插件访问并提交,同步,和更新[个人需求]。
1. 安装libapache2-svn
sudo apt-get install libapache2-svn
2. 配置apache访问地址
sudo chown -R www-data:www-data /home/gopain/svn/xiaoqu
3. 配置apache管理svn登录认证
sudo gedit /etc/apache2/mods-available/dav_svn.conf
添加:
<Location /xiaoqu>
DAV svn
SVNPath /home/gopain/svn/xiaoqu
AuthType Basic
AuthName "myproject subversion repository"
AuthUserFile /home/gopain/svn/xiaoqu/conf/passwd
#<LimitExcept GET PROPFIND OPTIONS REPORT>
Require valid-user
#</LimitExcept>
</Location>
4. 重启apache服务器
/etc/init.d/apache2 restart
现在在浏览器上访问:http://localhost/xiaoqu 即可。