代码拉取完成,页面将自动刷新
wandisco 整理的 RPM 文件官网:http://opensource.wandisco.com/centos/6/svn-1.8/RPMS/x86_64/
下载下面几个 RPM 文件:
sudo mkdir -p /opt/setups/subversion/ ; cd /opt/setups/subversion/
wget http://opensource.wandisco.com/centos/6/svn-1.8/RPMS/x86_64/mod_dav_svn-1.8.15-1.x86_64.rpm
wget http://opensource.wandisco.com/centos/6/svn-1.8/RPMS/x86_64/serf-1.3.7-1.x86_64.rpm
wget http://opensource.wandisco.com/centos/6/svn-1.8/RPMS/x86_64/subversion-1.8.15-1.x86_64.rpm
wget http://opensource.wandisco.com/centos/6/svn-1.8/RPMS/x86_64/subversion-gnome-1.8.15-1.x86_64.rpm
wget http://opensource.wandisco.com/centos/6/svn-1.8/RPMS/x86_64/subversion-javahl-1.8.15-1.x86_64.rpm
wget http://opensource.wandisco.com/centos/6/svn-1.8/RPMS/x86_64/subversion-perl-1.8.15-1.x86_64.rpm
wget http://opensource.wandisco.com/centos/6/svn-1.8/RPMS/x86_64/subversion-python-1.8.15-1.x86_64.rpm
wget http://opensource.wandisco.com/centos/6/svn-1.8/RPMS/x86_64/subversion-tools-1.8.15-1.x86_64.rpm
安装下载的 RPM 文件:
sudo rpm -ivh *.rpm
检查安装后的版本:
svn --version
Dependency Overview
):http://svn.apache.org/repos/asf/subversion/trunk/INSTALL
subversion-1.8.15.tar.gz
/opt
目录下创建一个目录 setups
用来存放各种软件安装包;在 /usr
目录下创建一个 program
用来存放各种解压后的软件包,下面的讲解也都是基于此习惯EPEL、RepoForge
,如果你出现 yum install XXXXX
安装不成功的话,很有可能就是你没有相关源,请查看我对源设置的文章sudo yum install -y gcc gcc-c++ autoconf libtool
wget http://archive.apache.org/dist/apr/apr-1.5.2.tar.gz
wget http://archive.apache.org/dist/apr/apr-util-1.5.4.tar.gz
wget http://zlib.net/zlib-1.2.8.tar.gz
wget http://www.sqlite.org/2016/sqlite-amalgamation-3100200.zip
wget http://apache.fayea.com/subversion/subversion-1.8.15.tar.gz
tar -zxvf apr-1.5.2.tar.gz
mv apr-1.5.2/ /usr/program/
cd /usr/program/apr-1.5.2
./configure
make
make install
/usr/local/apr/bin/apr-1-config
,这个需要记下来,下面会用到tar -zxvf apr-util-1.5.4.tar.gz
mv apr-util-1.5.4/ /usr/program/
cd /usr/program/apr-util-1.5.4/
./configure --with-apr=/usr/local/apr/bin/apr-1-config
make
make install
/usr/local/apr/bin/apu-1-config
,这个需要记下来,下面会用到tar -zxvf zlib-1.2.8.tar.gz
mv zlib-1.2.8/ /usr/program/
cd /usr/program/zlib-1.2.8/
./configure
make
make install
tar -zxvf subversion-1.8.15.tar.gz
mv subversion-1.8.15/ /usr/program/
unzip sqlite-amalgamation-3100200.zip
mv sqlite-amalgamation-3100200/ /usr/program/subversion-1.8.15/
cd /usr/program/subversion-1.8.15/
./configure --prefix=/usr/local/subversion --with-apr=/usr/local/apr/bin/apr-1-config --with-apr-util=/usr/local/apr/bin/apu-1-config
make
make install
在系统上创建一个目录用来存储所有的 SVN 文件:mkdir -p /opt/svn/repo/
新建一个版本仓库:svnadmin create /opt/svn/repo/
locks
hooks
db
conf
format
README.txt
conf
最为重要,常用的配置文件都在里面
svnserve.conf
是 svn 服务综合配置文件passwd
是用户名和密码配置文件authz
是权限配置文件设置配置文件
vim /opt/svn/repo/conf/svnserve.conf
anon-access
: 对不在授权名单中的用户访问仓库的权限控制,有三个可选性:write、read、none
none
表示没有任何权限read
表示只有只读权限write
表示有读写权限auth-access
:对在授权名单中的用户访问仓库的权限控制,有三个可选性:write、read、none
none
表示没有任何权限read
表示只有只读权限write
表示有读写权限password-db
:指定用户数据配置文件authz-db
:指定用户权限配置文件realm
:指定版本库的认证域,即在登录时提示的认证域名称。若两个版本库的认证域相同,建议使用相同的用户名口令数据文件
realm = myrepo
添加用户
vim /opt/svn/repo/conf/passwd
用户名 = 密码
的即可设置用户权限
vim /opt/svn/repo/conf/authz
r
表示可写w
表示可读rw
表示可读可写* =
表示除了上面设置的权限用户组以外,其他所有用户都设置空权限,空权限表示禁止访问本目录,这很重要一定要加上[groups]
表示下面创建的是用户组,实际应用中一般我们对使用者都是进行分组的,然后把权限控制在组上,这样比较方便。使用组权限方式:@组名 = rw
启动服务
svnserve -d -r /opt/svn/repo/ --listen-port 3690
-d
表示后台运行-r /opt/svn/repo/
表示指定根目录--listen-port 3690
表示指定端口,默认就是 3690,所以如果要用默认端口这个也是可以省略掉的停止服务
killall svnserve
测试
service iptables stop
sudo iptables -I INPUT -p tcp -m tcp --dport 3690 -j ACCEPT
sudo /etc/rc.d/init.d/iptables save
sudo service iptables restart
svn://192.168.0.110
/opt/svn/repo/hooks
vim /opt/svn/repo/hooks/pre-revprop-change
echo "$1 $2 $3 $4 $5" >> /opt/svn/repo/logchanges.log
,改为:echo "$1 $2 $3 $4 $5" >> /你的仓库地址/logchanges.log
pre-revprop-change.tmpl
,这个其实就是 svn 提供给你模板,其他的那些你有兴趣也可以研究下此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。