@(关键字)[centos|SVN|版本控制系统]
准备工作
- 操作系统:CentOS 6.4 64位
- CPU:4核
- 内 存:4G
动手干起来
一、yum安装svn
操作命令:
yum install -y subversion
二、验证svn
操作命令:
svn --version
注意:
可能会出现错误svnadmin:error while loading shared libraries: libaprutil1.so.0:cannot open shared object file: No such file or directory
分析:出现这个错误的原因就是svnserver在编译时是加了apache支持的,现在无法找到apr-util库,一般情况下将apr-util的lib目录加入到系统的lib路径中就可以了,比如我服务器的apache的apr和apr-util的安装目录分别如下:
>apr路径:/usr/local/apr
>apr-util路径:/usr/local/apr-util(如果服务器中没有,則需要加上去)
>```
>然后打开`/etc/ld.so.conf`文件,并加入上面两个目录下的**lib**路径到文件中,如下(复制粘贴就行):
>```
># vi /etc/ld.so.conf
>
>...
>/usr/local/apr/lib>/usr/local/apr-util/lib
>```
>在文件的最后加入上面的两行指定路径即可,然后使用以下命令進行更新:
>```
>ldconfig -v
>```
>以上錯誤解決方案參考于[铁木箱子的mzone][1]
####三、创建svn版本库
命令:
```cmake
mkdir /var/svn #我这里把版本库放在了var目录下的svn文件夹,方便管理
svnadmin create /var/svn/repo0 #我这里将svn作为所有版本库的目录,并创建了一个名为repo0的版本库
四、配置当前的版本库
进入刚才创建的repo0版本库的文件夹:cd /var/svn/repo0
,可以使用ll
命令查看这个文件夹中有哪些文件,之后进入conf
文件夹,命令cd conf/
说明如下:
-
svnserve.conf
:svn服务综合配置文件。 -
passwd
: 用户名口令文件。 -
authz
: 权限配置文件。
4-1.修改passwd文件
在此文件中可以添加用户和对应的密码;打开passwd文件命令如下:
vi passwd
在其中加入如下的配置:
#formatusername=password
user1=user1Pwd
user2=user2Pwd
4-2修改authz文件
在此文件可以定义权限组,分别分为测试组和开发组;命令如下
[groups]
# harry_and_sally = harry,sally
# harry_sally_and_joe = harry,sally,&joe
developer=user1,user2
tester=user1
定义组的读写权限,定义在版本库上
[repo0:/]
@developer=rw
@tester=r
4-3 修改svnserve.conf
将以下几行的注释符号#
去掉
anon-access = none #没有登录的用户不能访问
auth-access = write #登录的用户可以写入
password-db = passwd #密码文件为当前目录下的
passwd authz-db = authz #验证文件为当前目录下的authz
五、停止和启动svn
启动svn:
svnserve -d -r /var/svn/
查看svn是否启动(看是否有进程存在):
ps -aux |grep svn
关闭svn:
kill -9 progressId
六、踩过的坑
错误1:在svn客户端更新代码时出现
/var/svn/repo0/conf/svnserve.conf:12: Option expected
错误
解决方法:在服务器中subversion读取配置文件svnserve.conf时,无法识别有前置空格的配置文件。
所以打开svnserve.conf文件,去掉以下两行前面的空格。
anon-access = read
auth-access = write
##反馈与建议
- 微博:[\[@SombieFF\]](http://weibo.com/3178494643/profile?topnav=1&wvr=6)
- 邮箱:<shexd1001@gmail.com>
- 微信:WeChatId:wxxdong2102
--------
非常感谢您阅读这份帮助文档。点击分享按钮,分享给更多的人呗。
![wechat.jpg](http://upload-images.jianshu.io/upload_images/3269064-ed314734718e273a.jpg?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
---------
[1]: http://www.mzone.cc/article/639.html