共计 4789 个字符,预计需要花费 12 分钟才能阅读完成。
CentOS 下 SVN 版本控制的安装(包括 yum 与非 yum)的步骤记录。
一、yum 安装
rpm -qa subversion //检查是否安装了低版本的 SVN
yum remove subversion //如果存储旧版本,卸载旧版本 SVN
开始安装
yum -y install subversion
svnserve --version //查看版本
创建版本仓库
mkdir -p /data/svn/project
svnadmin create /data/svn/project/
查看 /data/svn/project 文件夹发现包含了 conf, db,format,hooks, locks, README.txt 等文件,说明一个 SVN 库已经建立。
配置权限
cd /data/svn/project/conf/ //进入配置目录
vim svnserve.conf //编辑配置文件
vim passwd //编辑密码文件
vim authz
举例:
[groups]
project_p = pm
project_s = server1,server2,server3
project_c = client1,client2,client3
project_t = test1,test1,test1
[project:/]
@project_p = rw
* =
[project:/server]
@project_p = rw
@project_s = rw
* =
[project:/client]
@project_p = rw
@project_c = rw
* =
[project:/doc]
@project_p = rw
@project_s = r
@project_c = r
@project_t = r
* =
说明:以上信息表示,只有 project_p 用户组有根目录的读写权。r 表示对该目录有读权限,w 表示对该目录有写权限,rw 表示对该目录有读写权限。最后一行的 * = 表示,除了上面设置了权限的用户组之外,其他任何人都被禁止访问本目录。这个很重要,一定要加上!
配置防火墙
vi /etc/sysconfig/iptables //配置防火墙
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp -dport 3690 -j ACCEPT //加入此行代码
service iptables restart //重启防火墙
另,有开启 3690 端口的命令,在终端输入以下命令:1>iptables -I INPUT -i eth0 -p tcp --dport 3690 -j ACCEPT
2>iptables -I OUTPUT -o eth0 -p tcp --sport 3690 -j ACCEPT
然后保存:/etc/rc.d/init.d/iptables save
在看看是否已经有了 3690 端口的开放权限:/etc/init.d/iptables status
svnserve -d -r /data/svn/ //启动 SVN
netstat -ln | grep 3690 //查看端口状态
打开本地 Windows 客户端检出
客户端提交文件测试
然后新创建一个 WEB 目录,实现修改 WEB 程序文件。在这里把 /data/www/ 作为指定 WEB 目录
svn co svn://127.0.0.1/project /data/www/
客户端提交了版本修改之后,在之前的公司每次都是需要执行 svn update 命令,而且不小心会出现开发冲突。
下面来配置 SVN 钩子,来实现自动更新服务器 WEB 目录文件
cd /data/svn/project/hooks/
vim post-commit
#!/bin/sh
export LANG=zh_CN.UTF-8
SVN=/usr/bin/svn #这里填写你的 svn 程序目录
WEB=/data/www/ #这里填写你的 web 程序目录
$SVN update $WEB --username user1 --password password123456 #客户端的用户名和密码,在 svn 配置文件里配置的信息
chmod 777 post-commit
最后重启 svn!客户端提交测试,查看 WEB 目录文件自动更新成功!
二、非 yum 安装
wget http://subversion.tigris.org/downloads/subversion-1.6.9.tar.gz
wget http://subversion.tigris.org/downloads/subversion-deps-1.6.9.tar.gz
#解压
tar zxvf subversion-1.6.9.tar.gz
tar zxvf subversion-deps-1.6.9.tar.gz
#编译
cd subversion-1.6.9
./configure --prefix=/usr/local/svn --without-berkeley-db
make
make install
安装过程中可能遇到的问题:
1、提示 OpenSSL 缺失
configure: error: We require OpenSSL; try –with-openssl
解决方法:编译前先安装了一个 openssl 即可
cd /usr/local/src
wget http://www.openssl.org/source/openssl-1.0.0a.tar.gz
tar -zxvf openssl-1.0.0a.tar.gz
cd openssl-1.0.0a
./config
./config -t
make depend
make
make test
make install
make test 的时候本人出现过以下错误,本人没有去理会,继续 make install。
yum -y install openssl #为了放心,抱着试一试的态度,执行了 yum 安装命令
安装之后会在 /usr/local 下生成一个 ssl 目录,编译 SVN 时加上 openssl 路径即可
./configure --prefix=/usr/local/svn --without-berkely-db --with-openssl=/usr/local/ssl/
2、zlib 依赖缺失
configure 配置 SVN 时可能提示如下错误信息:
configure: error: subversion requires zlib
解决办法:安装 zlib
—————————————— 分割线 ——————————————
免费下载地址在 http://linux.linuxidc.com/
用户名与密码都是www.linuxidc.com
具体下载目录在 /2017 年资料 /10 月 /21 日 /CentOS 下 SVN 版本控制的安装(包括 yum 与非 yum)/
下载方法见 http://www.linuxidc.com/Linux/2013-07/87684.htm
—————————————— 分割线 ——————————————
cd /usr/local/src
这里我上传 Linux 公社了。也可以直接 Google 下 zlib-1.2.8.tar.gz,下载上传至指定目录即可
tar -xvzf zlib-1.2.8.tar.gz
cd zlib-1.2.8
./configure
make
make install
3、expat 依赖缺失
configure: error: no XML parser was found: expat or libxml 2.x required
解决办法:安装 expat
cd /usr/local/src
wget http://nchc.dl.sourceforge.net/project/expat/expat/2.1.0/expat-2.1.0.tar.gz
tar -zxvf expat-2.1.0.tar.gz
cd expat-2.1.0
./configure
make
make install
再次执行
./configure --prefix=/usr/local/svn --without-berkely-db --with-openssl=/usr/local/ssl/
4、在make && make install
时出现报错
make[1]: Leaving directory `/usr/local/src/subversion-1.6.9/serf’
解决办法:添加 –without-serf 参数重新编译 subversion 即可:
./configure --prefix=/usr/local/svn --without-berkely-db --with-openssl=/usr/local/ssl/
--without-serf
make && make install
安装完毕之后查看一下 SVN 版本
/usr/local/svn/bin/svnserve --version
OK!咱的 SVN 都可以看到版本了,证明没问题,可以创建仓库之类的操作了。和 yum 配置的方式差不多,只不过有时候命令行要有所改动了,
比如 yum 安装之后是这样创建仓库:svnadmin create /data/svn/project/
但是在编译安装的需要指定目录了:/usr/local/svn/bin/svnadmin create /data/svn/project/
mkdir -p /data/svn/project
/usr/local/svn/bin/svnadmin create /data/svn/project/
cd /data/svn/project/
接下来的配置步骤就略了,可以参考上面 yum 安装的配置方式,最后启动 SVN 服务还是需要注意的
/usr/local/svn/bin/svnserve -d -r /data/svn/
完毕~!
Ubuntu 14.04 下搭建 SVN 服务器 SVN:// http://www.linuxidc.com/Linux/2015-01/111956.htm
CentOS 7 下安装 iF.svnadmin 实现 Web 方式管理 SVN(源码安装)http://www.linuxidc.com/Linux/2016-08/134214.htm
CentOS7.2 编译安装 SVN1.9.5 客户端 http://www.linuxidc.com/Linux/2017-03/141387.htm
SVN 服务器搭建步骤及使用实战 http://www.linuxidc.com/Linux/2017-01/139282.htm
CentOS 7 下搭建配置 SVN 服务器 http://www.linuxidc.com/Linux/2017-05/144254.htm
CentOS 7.2 下 Nginx+MySQL+PHP-FPM+SVN 配置 Walle 自动化部署系统详解 http://www.linuxidc.com/Linux/2016-11/137703.htm
基于腾讯 CentOS 7 云服务器搭建 SVN 版本控制库 http://www.linuxidc.com/Linux/2017-05/144244.htm
CentOS 7.1 下 SVN 安装与配置 http://www.linuxidc.com/Linux/2016-12/138637.htm
CentOS 6.8 搭建 SVN(版本控制系统)及 SVN 的使用 http://www.linuxidc.com/Linux/2017-04/143093.htm
Subversion (SVN) 的详细介绍:请点这里
Subversion (SVN) 的下载地址:请点这里
本文永久更新链接地址:http://www.linuxidc.com/Linux/2017-10/147871.htm