查看 svn版本
rpm -qa subversion
安装
yum -y install subversionlinux
配置安装svnweb
创建svn版本数据存储根目录(svndata)及用户、密码权限目录(svnpasswd)
mkdir -p /application/svndata 根目录
mkdir -p /application/svnpasswd 用户...vim
启动
svnserve -d -r /application/svndata
查看进程
ps -ef|grep svn服务器
建立项目
svnadmin create /application/svndata/项目名称
svnadmin create /application/svndata/sadoc
tree /application/svndata 查看目录app
管理
到sadoc目录下
cd /application/svndata/sadoc/confsvn
cp svnserve.cnof svnserve.cnof.ori 进行复制,先备份一下,改了不必定对,改了以后能够进行对比post
vim svnserve.cnof
12 行 打开去掉注释
anon-access=none
13行
auth-access=write
20行
password-db = /application/svnpasswd/passwd
进行统一管理
authz-db =/application/svnpasswd/authz进程
比较
diff svnserve.conf.ori svnserve.cnof事件
拷贝一份
cp passwd authz /application/svnpasswd/ip
权限
目录下
cd /application/svnpasswd/
chmod 700 *
添加用户
vim passwd
oldboy = oldboy123 注意空格,严格按照格式
提示:
1.等号前为svn帐号。等号为svn密码。密码是明文
2.更改svnserve.cnof,须要重启svn,更改athz,passwd不须要
配置权限
vim authz
[<版本库>:/项目/目录]
@<用户组名> = <权限>
<用户名> = <权限>
sagroup = oldboy,gongli 组
[sadoc]
oldboy = rw
@sagroup = r
注意:用户必须在passwd有,没必要重启
重启svn
pkill svnserve
svnserve -d -r /application/svndata/
帐号:svn://ip/sadoc
Linux上更新svn
linux 查看svn的数据
将文件checkout到本地目录
svn co svn://10.0.0.7/sadoc/ /svndata/ --username=oldboy --password=oldboy123
注意调整字符集
export LC_CTYPE="en_US.UTF-8"
export LC_ALL=
查看数据
svn ls svn://10.0.0.7/sadoc/ /svndata/ --username=oldboy --password=oldboy123
提交数据
svn add a.xtx
svn ci -m "备注"
建立一个分支
svn copy svn://10.0.0.16/sadoc/trunk svn://10.0.0.16/sadoc/branch/branch_name -m "create branch" --username=oldboy --password=oldboy123
钩子脚本
就是被某些版本库事件触发的程序。
查看
cd /application/svndata/sadoc/hooks
要使用哪一个钩子把.tmpl去掉
必须注意你的钩子中设置好环境变量或为你的程序指定好绝对路径
经常使用的钩子
post-commit:
svn更新自动周知,msn或者邮件
更新触发checkout程序,而后实时rsync推送到服务器
pre-commit:
限制上传文件扩展名及大小,控制提交要输入的信息等
start-commit:
案列
rsync与svn钩子结合实现数据同步
创建同步web目录
hooks目录下
mkdir /data/www
svn co svn://10.0.0.17/sadoc /data/www --username --password
在hooks目录下 cp post-commit.tmpl post-commit
上线解决方案