UbuntuServer 12.04安装记录(二):svn服务的创建

好久不见. 提交于 2019-12-03 03:24:12

在Ubuntu上搭建SVN的文章很多,但是都是拷贝来拷贝去的,我这里重新整理一下:

首先推荐一篇参考文档,连接如下:

http://wiki.ubuntu.org.cn/SubVersion

以下是我整理后的步骤:

1.安装必要的软件包:

$ sudo apt-get install subversion

$ sudo apt-get install libapache2-svn

2.创建一个SVN账号和SVN组,并保证SVN账号已经添加进了SVN组,我的SVN账号是svnuser

$ sudo adduser svnuser  添加SVN账号

$ sudo addgroup subversion 添加SVN组

$sudo usermod -G subversion -a svnuser 将svnuser添加到subversion组

$ cat /etc/group|grep subversion 确认是否添加成功,如果添加成功会显示以下内容:
subversion:x:1004: svnuser

3.创建一个SVN仓库

$ sudo mkdir /home/svn

$ cd /home/svn

$ sudo mkdir myproject

$sudo chmod -R g+rws myproject

$ sudo chown -R svnuser:subversion myproject

$ sudo svnadmin create /home/svn/myproject

$ sudo chown -R svnuser:subversion myproject

$sudo chmod -R g+rws myproject

这个地方一定要保证看到以下内容:

ls -l /home/svn/myproject/db/txn-current-lock

-rw-rwSr-- 1 svnuser subversion  0  2009-06-18  15:33  txn-current-lock

不然在SVN递交时,会提示:

Can't open '/home/svn/myproject/db/txn-current-lock': Permission denied

相当于在myproject下,所有文件都要属于subversion这个组的svnuser这个用户

4.配置仓库访问权限,刚才创建了一个名称为myproject的SVN仓库,现在要设置它的访问权限,

首先编辑myproject/conf/svnserve.conf,激活以下两个选项:

password-db = password

authz-db = authz

然后编辑myproject/conf/authz,在[group]字段添加以下内容,将weike作为管理者:

[groups]
admin = weike


[/]

@admin=rw

*=r
最后编辑myproject/conf/passwd文件,在[users]字段添加以下内容:

[users]
weike= 123

保存上述编辑文件。

5.打开svn服务:

$sudo svnserve -d -r /home/svn

这里要注意,一定要用sudo,不然也会遇到以下提示;

Can't open '/home/svn/myproject/db/txn-current-lock': Permission denied

6.设定为开机自动开启服务:

编辑文件/etc/rc.local,在exit0前一行添加一下内容:

svnserve -d -T -r /home/svn

此处无需添加sudo



易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!