这篇文章主要介绍“ubuntu系统上svn服务器的搭建步骤”,在日常操作中,相信很多人在ubuntu系统上svn服务器的搭建步骤问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”ubuntu系统上svn服务器的搭建步骤”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!
想在一台Ubuntu上搭建SVN服务,在网上看到的教程都需要安装Apache,但我已经安装了Nginx了,不想仅仅为了SVN再多装一个Apache。经过一番摸索,终于搞定了最小化的SVN服务,额外的软件什么也不需要安装。
下面是详细的过程:
1 通过apt-get安装subversion
代码如下:
apt-get install subversion
我原来误入歧途,以为会有个subversion-server之类的包,怎么找也找不到,后来才知道原来这个subversion同时包含了服务端和客户端。
2 找个目录当做SVN的根目录
我选择的是/data/svn,以下命令也都是跟着这个目录走的,请按照自己的选择自行修改
3 创建一个库
我的叫做akcms,执行完毕后会发现自动在/data/svn/akcms/目录中生成了一堆东西,其中有一个叫conf的文件夹
代码如下:
svnadmin create /data/svn/akcms
4 接下来修改/data/svn/akcms/conf/下的三个文件,依次是:svnserve.conf、passwd、authz。他们三个作用分别是:主配置文件、密码配置文件、权限配置文件
5 编辑文件vi /data/svn/akcms/conf/svnserve.conf
找到以下几项,按照如下的设置修改,去掉前面的注释,每一行的开头不能有空格
代码如下:
anon-access = none
auth-access = write
password-db = passwd
authz-db = authz
6 编辑文件vi /data/svn/akcms/conf/passwd
代码如下:
[users]
mantou = 123456
格式很简单,用户名、密码,每行一个,默认是明文保存
7 编辑文件 vi /data/svn/akcms/conf/authz
代码如下:
[groups]
develop = mantou
[/]
@develop = rw
这个配置稍微复杂点:[groups]组是设置用户组的,比如:我设置的develop可以理解为开发人员组,等号的后面是组的成员,每个成员之间用逗号分隔。接下来的[/]为具体的某个地址设置权限,用@develop代表为develop组设置权限,rw代表又能读又能写。还有其他的复杂用法,不过我只懂最简单最常用的,所以其他的都跳过。
8 启动服务
代码如下:
svnserve -d -r /data/svn
参数-d表示以守护进程模式启动,-r表示代码仓库的根目录,如果启动成功了,通过ps aux | grep svnserve可以看到进程,至此一个最简单的SVN服务就搭建好了。
然后把这个命令放到rc.local中,让每次开机都启动SVN服务。
9 接下来测试验证,在客户机上找个目录执行一下命令:
代码如下:
svn co svn://192.168.0.111/akcms --username=mantou --force
svn://192.168.0.111/akcms就是新建的代码仓库的地址,假设刚才的服务是建在192.168.0.111上的。参数--username是指定用户名的,不指定的话会以当前的系统用户登录,系统用户和SVN用户是不相干的两套,所以还是人工指定的好。--force参数可有可无,如果在同一个地址上反复测试,删了建建了删,SVN客户端会缓存住上一次成功checkout的UUID,如果删了再建UUID会发生改变,客户端校验不一致会提示“Repository UUID 'xxx' doesn't match expected UUID 'xxx'”,加--force参数就不理会这个校验,强行checkout。
如果顺利的话,会提示“Checked out revision 0.”,然后在当前目录下生成一个akcms的目录,里面就是代码仓库的代码了。
到此,关于“ubuntu系统上svn服务器的搭建步骤”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注亿速云网站,小编会继续努力为大家带来更多实用的文章!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。