记--linux 下svn安装配置,同步web目录
安装
#yum install subversion
1.创建版本库
# svnadmin create /svn/project
2.配置svn服务的配置文件svnserver.conf文件
anon-access = read
auth-access = write
password-db = passwd
注意,此几行配置所在行第一个字母钱不能有任何空格,否则会出现类似svnserve.conf:12: Option expected 这样的错误
好了,通过以上配置,你的svn就可以了。
3.添加两个访问用户及口令
# vi /svn/project/conf/passwd
[users]
xiaoran.shen = 123456
test1 = 123456
test2 = 123456
格式是 用户名=密码 用户名=密码 用户名=密码
4. 配置新用户的授权文件
# vi /svn/project/conf/authz
[groups] #这里是用户组
admin = xiaoran.shen,test1
user = test2
[/] 这里是跟目录用户组的权限
@admin = rw
@user = r
6.启动svn服务
svnserve -d -r /svn/project/
注意:不要使用系统提供的 /etc/init.d/svnserve start 来启动,因为系统默认的启动脚本中没有使用 –r /svn/project参数指定一个资源。这种情况下启动的svn服务,客户端连接会提示“svn: No repository found in 'svn://192.168.11.229/project' ”这样的错误。
默认svn服务器端口是3690。
7.自动同步到web工作目录
#cd /home/svn/project/hooks
#vi post-commit
内容如下:
#!/bin/sh
#设定环境变量,如果没有设定可能会出现update报错
export LANG=zh_CN.GBK
#设定语言,根据系统语言设置,如果是UTF-8 就设置为 LANG=zh_CN.UTF-8
SVN_PATH=/usr/bin/svn
WEB_PATH=/home/wwwroot/testsvn
$SVN_PATH update svn://127.0.0.1/project $WEB_PATH --username 用户名 --password 密码 --no-auth-cache
给post-commit 执行权限:
svn checkout svn://192.168.1.1/pro/domain
chmod -R 755 post-commit