linux 下SVN搭建加自动提交更新到指定目录

一、安装

#yum installsubversion                yum安装SVN

#mkdir -p /opt/svn/repos               创建svn目录

#svnadmin create /opt/svn/repos       生成SVN配置文件

二、编辑配置文件

#vim /opt/svn/repos/conf/passwd

[users]
# harry = harryssecret
# sally = sallyssecret
nxeon = 123

用户名=密码 

#vim /opt/svn/repos/conf/authz

[/]
nxeon = rw
  给nxeon读写权限

#vim/opt/svn/repos/conf/svnserve.cof

去掉前下面前几个注释

anon-access = none    #如果不改成none windows下的SVN没有更新记录
auth-access = write  
#使授权用户有写权限
password-db = passwd 
#帐号和密码配置文件

authz-db = authz    #访问控制文件
realm = /opt/svn/repos  
#认证命名空间。

三、配置完之后启动SVN

svnserve -d -r /opt/svn/repos

四、测试SVN是否能检出

cd /home/www      进入要更新的目录

svn co svn://192.168.1.2 ./

svn co svn://192.168.1.2 /home/www 更新到www目录。会提示输用名和密码

五、接下来创建SVN钩子脚本

#vim/opt/svn/repos/hooks/post-commit  复制下面三行到post-commit

#!/bin/sh

export LC_ALL=zh_CN.UTF-8                     #解决SVN编码问题

/usr/bin/svn up --username "nxeon" --password "123" /home/www

chmod 777 /opt/svn/repos/hooks/post-commit    设置钩子权限

/opt/svn/repos/hooks/post-commit              可以单独运行这脚本

六、最后让svn和svn钩子 随系统启动

vim /etc/rc.d/rc.local

svnserve -d -r /opt/svn/repos

/opt/svn/repos/hooks/post-commit

放在/etc/rc.d/rc.local最后一行

你可能感兴趣的:(linux)