查看linux 内核:uname -a
查看当前CentOs版本: 我的是CentOS 7.6
命令:cat /etc/redhat-release
查看是否安装了svn
命令:svnserve --version
我的已安装所以显示如下 如果没安装会显示其他的 网上有安装svn教程 按照教程安装就可以
进入svn 目录创建项目svn库
我的svn目录在home/svn
创建svn项目库
命令 svnadmin create 项目ming名称
编辑svn 配置文件
进入刚创建的目录下的配置文件
命令:cd 项目/conf
编辑passwd
命令:nano passwd
在这里配置可以下载的用户名及密码 例如 svn的下载账户名是lcr 密码 123123 那么这里添加一行 lcr = 123123
编辑svnserve.conf文件 将红框前面的#去掉
SVN设置更新钩子
实现SVN与WEB同步,可以CO一个出来,也可以直接用自动更新web目录的方法,我们要在svn版本库中配置钩子来实现,就是创建一个post-commit的配置文件,对其进行简单的配置,简简单单的四步就可以实现Linux下SVN自动更新web目录配置。
第一步:建立你的web程序目录
mkdir test,并且进入目录检出svn
我的做法是直接web目录检出svn再修改目录名
第二步:在项目库的 hooks/ 目录下新建 post-commit 文件 【钩子脚本】
添加脚本如下
第三步:让post-commit有执行的权限(有读写即可,我是直接777了)
需要注意的是svn提交后出现255的报错是文件写入权限的问题。
这里给post-com'mit +x权限
这里还需要记得post-commit 原模板文件不能动 复制 去掉.tmpl后缀
chmod +x /home/svn/limatingche/hooks/post-commit
第四步:这里就已经完成了,第四步就是测试了。
说明:
export LANG=en_US.UTF-8是为了解决svn post commit 中文乱码,设置本地化编码,因为我的系统为UTF8编码,其实SVN默认就是UTF-8编码,如果编码是GBK的话不设置将会出现错误,而执行不成功,错误标识为
1 |
|
需要设置编码为:export LANG=zh_CN.GBK
如果提示:
1 |
|
赋予post-commit文件可执行权限