删除老版本
yum -y remove subversion
安装
yum -y install subversion
查看是否安装成功
(显示版本号为安装成功 version 1.7.14)
svnserve --version
创建svn文件夹
mkdir /data/svn/
创建svn仓库
svnadmin create /data/svn/gmtool
进入到密码配置文件配置密码(每行密码前不能有空格)
vim /data/svn/gmtool/conf/passwd
admin = adminpassword
testuser = testpassword
进入到svn.conf 配置
vim /data/svn/gmtool/conf/svnserve.conf
去掉这两行的注释# 扩展想查看提交的svn log日志 anon-access =none
这样通过鼠标右键TortoiseSVN->show log就可以查看svn提交的历史记录了。
password-db = passwd
anon-access = none
进入端口号配置文件
vim /etc/sysconfig/iptables
-A INPUT -p tcp -m tcp --dport 8998 -j ACCEPT (复制一行改端口保存并退出 我这里重置端口为8998
执行SVN启动命令,其中参数-d表示以守护进程的方式启动, -r表示设置的根目录。
svnserve -d -r "/data/svn/gmtool/" --listen-port 8998
重启防火墙
systemctl restart iptables
进入hooks创建钩子文件
cd /data/svn/gmtool/hooks/
touch post-commit && cp post-commit.tmpl post-commit
vim post-commit
复制以下代码粘贴保存并退出
#!/bin/sh
export LANG=zh_CN.UTF-8 #文件编码
REPOS="$1" #仓库路径
REV="$2" # 刚刚提交的代码的版本号
SVN=/usr/bin/svn # svn命令
WEB=/data/项目目录 # web目录
LOG=/home/auto_svn.log #日志文件
$SVN update $WEB --username admin --password adminpassword #最后更新的命令
给钩子文件赋值最高权限
chmod 777 post-commit
这个时候就可以在本地检出代码了
svn://127.0.0.1:8998 (127.0.0.1 是你的服务器ip)
然后上传一个测试文件看看
上传成功后再服务器上的文件夹中检出一下
svn checkout svn://127.0.0.1:8998
常用命令
关闭svn命令:
killall svnserve
查看端口号
netstat -apn | grep 8998
本地检出svn
svn://127.0.0.1:8998
上传文件后再服务器在检出一下svn
svn checkout svn://127.0.0.1:8998
使用 svn switch --relocate 更改仓库 URL
svn switch --relocate <旧的仓库 URL> <新的仓库 URL>
例如 :svn switch --relocate svn://128.0.0.1:8998 svn://127.0.0.1:8998