- 解压,要在同一个目录下:
[[email protected] opt]# tar-zxvf subversion-1.6.1.tar.gz
[[email protected] opt]# tar-zxvf subversion-deps-1.6.1.tar.gz
- 2
编译及安装:
[[email protected] ~]# cdsubversion-1.6.1
[[email protected]]# ./configure 先编译,不指定路径,看是否报错
报错一:
configure: error: in`/root/subversion-1.6.1‘:
configure: error: no acceptable C compilerfound in $PATH 此错误的意思是没有安装gcc语言
解决方法:yum install gcc ,安装后再次执行./configure看是否报错
报错二:
configure: error: We requireOpenSSL; try --with-openssl 没有安openssl openssl-devel
解决方法:yum install opensslopenssl-devel, 安装后再次执行./configure看是否报错
报错三:
configure: error: no XML parser was found: expat or libxml 2.x required
解决方法:yum install expat, 如果装不上就源码装安装后再次执行./configure看是否报错,
如果还有错误就根据提示一直解决,不会的百度,直到出现下列正确提示:
Berkeley DB here:
http://www.oracle.com/technology/software/products/berkeley-db/index.html
成功后执行下列操作
[[email protected]]# ./configure --prefix=/usr/local/svn/
[[email protected]]# make && make install
- 3
把svn相关的命令添加到环境变量中:
[[email protected]]# echo "export PATH=$PATH:/usr/local/svn/bin/">> /etc/profile
[[email protected]]# source /etc/profile
[[email protected] subversion-1.6.1]# cd /usr/local/svn/
[[email protected] svn]# ls 看到下面有内容,说明安装成功
bin build-1 include lib share
[[email protected] ~]# /usr/local/svn/bin/svnserve --version 查看SVN版本信息,出现版本信息为正确
END
建立测试仓库
- 1
建立SVN的根目录,研发中心有多个项目部:
[[email protected]]# mkdir -p /opt/svn/
- 2
建立一个测试仓库:
[[email protected]]# mkdir -p /opt/svn/svntest/
[[email protected]]# svnadmin create /opt/svn/svntest/
- 3
修改配置文件:
[[email protected] ~]# cd /opt/svn/svntest/
[[email protected] svntest]# ls
conf db format hooks locks README.txt
[[email protected] svntest]# cd /opt/svn/svntest/conf/
[[email protected] conf]# ll
总计 24
-rw-r--r-- 1 root root 710 08-25 09:40 authz
-rw-r--r-- 1 root root 325 08-25 09:38 passwd
-rw-r--r-- 1 root root 144908-25 09:36 svnserve.conf
- 4
[[email protected] conf]# visvnserve.conf 修改svn配置文件
[general]
anon-access = none # 使非授权用户无法访问auth-access = write # 使授权用户有写权限password-db = password#密码数据库的路径authz-db = authz # 访问控制文件以上语句都必须顶格写, 左侧不能留空格, 否则会出错.
- 5
[[email protected] conf]# vim passwd
修改passwd为以下内容:
[users]# harry = harryssecret# sally = sallyssecret
hello=123
aaa = 123
www = 123
用户名=密码
这样我们就建立了hello用户, 123密码
以上语句都必须顶格写, 左侧不能留空格, 否则会出错.
- 6
[[email protected] conf]# viauthz 指定svn用户拥有的目录权限
[groups]
admin = hello,www
[/]
@admin = rw
aaa = r
将用户添加到组,利用组来设置权限,也可以不需要租,直接在版本库下设置用户,例如
aaa = r ,意思是aaa用户对svntest测试库下所有的目录有读权限,而hello和www有读写权限。如果是自己用,就直接是读写吧。
以上语句都必须顶格写, 左侧不能留空格, 否则会出错.
- 7
[[email protected] conf]# svnserve -d -r /opt/svn/svntest/ 启动SVN测试库
如果已经有svn在运行,可以换一个端口运行svnserve -d -r /opt/svn/ --listen-port 3391
注:
如果你的svn库的路径为:/home/svn/svntest
那么你启动时,不能用命令:
svnserve -d -r /home/svn/svntest
而要用命令:
svnserve -d -r /home/svn/
启服务器及测试
-
启SVN服务,并指定SVN的根目录:
[[email protected] test]#svnserve -d -r /opt/svn/
在这里特别的要注意,/opt/svn是仓库的根目录,不要和[svntest:/]目录重叠了。如果重叠是会提示错误
[[email protected] conf]# svn co svn://127.0.0.1 在本机上测试svn是否生效
不让它每次输入都提示yes/on的办法
编辑vim /root/.subversion/servers 找到下行去掉#号将on改为yes,上面绿色部分已提示 store-plaintext-passwords = no
- 2
服务已经正常起来:
[[email protected] conf]# netstat -anpl |grep svn
tcp 0 0 0.0.0.0:3690 0.0.0.0:* LISTEN 318/svnserve
--------------------------------------------------------------------------------
到此,SVN服务端就配置完成了