可以实现SVN本机备份。或者其他备份。关键是可以保持有一份最新的SVN文件可以查看。
实现SVN与WEB同步,可以CO一个出来,也可以直接用自动更新web目录的方法,我们要在svn版本库中配置钩子来实现,就是创建一个post-commit的配置文件,对其进行简单的配置,简简单单的四步就可以实现Linux下SVN自动更新web目录配置。
第一步:建立你的web程序目录
mkdir test,并且进入目录检出svn (检出目录 使用 svn checkout + svn完整url +存放目录)
我的做法是直接web目录检出svn再修改目录名
第二步:在项目库的 hooks/ 目录下新建 post-commit 文件 【钩子脚本】
添加脚本如下
第三步:让post-commit有执行的权限(有读写即可,我是直接777了)
需要注意的是svn提交后出现255的报错是文件写入权限的问题。
第四步:这里就已经完成了,第四步就是测试了。
说明:
export LANG=en_US.UTF-8是为了解决svn post commit 中文乱码,设置本地化编码,因为我的系统为UTF8编码,其实SVN默认就是UTF-8编码,如果编码是GBK的话不设置将会出现错误,而执行不成功,错误标识为
1 | svn: Can 't convert string from native encoding to ' GBK' |
需要设置编码为:export LANG=zh_CN.GBK
如果提示:
1 | post-commit hook failed ( exit code 255) with no output |
赋予post-commit文件可执行权限 chmod +x commit .可以实现。