linux下svn设置钩子来更新项目文件

设置钩子 


我们知道要把svn的内容更新到web目录需要手动的svn up,但是今天笔者教你自动更新web目录的方法,我们要在svn版本库中配置钩子来实现,就是创建一个post-commit的配置文件,对其进行简单的配置,简简单单的四步就可以实现Linux下SVN自动更新web目录配置。 

第一步:建立你的web程序目录 
mkdir /var/www/html/test 


进入/var/www/html/test目录。 


   svn checkout svn://121.14.177.178:843/svntest 不重命名文件夹,直接在当前目录下检出 
   svn checkout svn://121.14.177.178:843/svntest test 检出文件并且重命名文件夹 
   
第二步:在项目库的 hooks/ 目录下新建 post-commit 文件 【钩子脚本】 

添加脚本内容如下: 

#!/bin/sh 
SVN=/usr/bin/svn           #这里配置的是svn安装bin目录下的svn文件 
WEB=/var/www/html/test     #要更新的目录 
$SVN update $WEB --username xxx --password xxx (此版本是linux下,windows下是.bat,写法少有不同) 

其中SVN=右边改成 svn 命令位置 
WEB=右边改成你实际的web目录 


第三步:让 post-commit 有执行的权限 chmod -R 0777 post-commit 


第四步:这里就已经完成了,第四步就是测试了。 


说明: 
#!/bin/sh 说明是执行shell命令 
export LANG=zh_CN.GBK 是为了解决svn post commit 中文乱码,设置本地化编码,因为我的系统为GBK编码,SVN默认是UTF-8编码,如果不设置将会出现错误,而执行不成功,错误标识为svn: Can't convert string from native encoding to 'UTF-8' 
/usr/bin/svn update --username lxy --password 123456 /var/www/myproject 执行更新操作 
如果提示:post-commit hook failed (exit code 255) with no output赋予post-commit文件可执行权限 
如果您的默认编码就是UTF-8的,要上传中文文件,先将文件另存为UTF-8格式在提交 

原文链接: linux下svn设置钩子来更新项目文件 版权所有,转载时请注明出处,违者必究。
注明出处格式:chunkuan ( https://jiachunkuan.com/post-27.html )