1、subversion安装(已安装跳过)
yum install -y subversion
svn --version
2、创建版本库(根目录以:/var/svn/为例,以:/var/svn/test为某一个仓库)
mkdir -p /var/svn/test
svnadmin create /var/svn/test
// 执行后可看到仓库下有如下目录
# conf // 配置文件夹
# db // 数据库文件夹
# hooks // 钩子程序(触发器)
# locks // 文件锁定相关
# format //
# README.txt //
3、配置用户权限
vi /var/svn/sPlant-C/conf/svnserve.conf
# anon-access = read // 开启并修改成anon-access = none(设置匿名不能访问),如果是read则不会显示日志出来
# auth-access = write // 开启权限认证(去掉前面#)
# password-db = passwd // 开启用户配置信息存放文件
# authz-db = authz // 开启存放授权信息文件
//修改后保存
vi /var/svn/sPlant-C/conf/passwd
// 账号=密码
test=123456
test2=123456
test3=123456
//修改后保存
vi /var/svn/sPlant-C/conf/authz
[groups] // 设置分组下的用户
kaifa = test,test2
ceshi = test3
[/] // 指定目录下给定的权限(修改为/)
@kaifa = rw // 按分组分(@表示分组)
@ceshi = r
//修改后保存
4、启动SVN
svnserve -d -r /var/svn // -d:声明后台启动 -r:声明版本库根目录
ps -ef | grep svn
5、配置钩子程序(hooks)
cd /var/svn/test/hooks/
vi post-commit
#!/bin/sh
REPOS="$1"
REV="$2"
export LANG=en_US.UTF-8 //设置编码
WEB=/var/www/test //web项目目录
SVN=/usr/bin/svn //svn文件
user=test
password=123456
$SVN update $WEB --username $user --password $password --no-auth-cache //设置登录账号密码并不缓存(这种方式需要在$WEB目录下checkout一下)
或者
$SVN co svn://localhost/sPlant-C $WEB --username $user --password $password1 --no-auth-cache //可实现不需要再站点目录下先checkout
切记post-commit需要给0777权限
配置完成之后把3690端口打开,然后正常使用即可,提交则将会自动同步到指定目录下。
可以自己尝试写一下shell脚本可以更方便的使用svn