SVN 使用记录

SVN 使用记录

SVN个人使用记录:

//服务器安装SVN
yum install subversion

cd /home

//新建目录
mkdir svn

//创建SVN仓库(仓库名:svn)
svnadmin create /home/svn

cd svn


我们这里特别关注一下conf文件夹,这个是存放配置文件的
cd svn/conf
** authz 是权限控制文件
** passwd 是帐号密码文件
** svnserve.conf 是SVN服务配置文件

配置passwd
vi passwd
[users]
test1=123456
** 账号=密码


配置authz
[/]
test1=rw

上面配置的含义是,test1对/home/svn/下所有文件具有可读可写权限,其它用户均无任何权限,最后一行*=很重要不能少。


配置svnserve.conf

打开下面的5个注释
anon-access = read #匿名用户可读
auth-access = write #授权用户可写
password-db = passwd #使用哪个文件作为账号文件
authz-db = authz #使用哪个文件作为权限文件
realm = /home/svn # 认证空间名,版本库所在目录

** 最后一行的realm记得改成你的svn目录
** 打开注释时切记前面不要留有空格,否则可能有问题



svnserve -d -r /home/svn(启动)

killall svnserve(停止)

** 上述启动命令中,-d表示守护进程, -r 表示在后台执行。
** 默认端口3690,如果你修改了端口,那么要记得加上端口号。

svn文件提交后自动同步更新到网站目录

假如现在有:

SVN版本库中的一个项目:/home/svn/tcyg
网站目录:/home/www/
我们先将SVN版本库中的一个项目checkout到网站目录:

svn co file:///home/svn/tcyg/ /home/www/

这时,网站目录已成为SVN的工作副本,接下来利用SVN的钩子让这个工作副本自动更新。

新建一个post-commit钩子:(SVN目录下的 hooks目录下:post-commit.tmpl)

vim /home/svn/tcyg/hooks/post-commit

#!/bin/sh

REPOS="$1"

REV="$2"

export LANG="zh_CN.UTF-8"    #防止乱码 

svn update /home/www/ --username Hwei --password 123456 --no-auth-cache #设置登陆账号密码并不缓存

//修改文件权限为755
chmod 755 /home/svn/tcyg/hooks/post-commit

注:不要遗漏第一行的#!/bin/sh,否则post-commit会报代号255的错误。

保存后,修改文件权限为755,否则SVN无法调用执行

OK,至此,就完成了svn文件提交后自动同步更新到网站目录的代码了。


回复列表



回复操作

正在加载验证码......

请先拖动验证码到相应位置

发布时间:2020-09-04 17:27:37

修改时间:2020-09-04 17:47:19

查看次数:169

评论次数:0