假设svn已经安装启动
创建svn仓库
svnadmin create test
这时test目录下面目录结构
drwxr-xr-x 2 root root 4096 Dec 12 13:29 conf
drwxr-sr-x 6 root root 4096 Dec 12 13:29 db
-r--r--r-- 1 root root 2 Dec 12 13:29 format
drwxr-xr-x 2 root root 4096 Dec 12 13:29 hooks
drwxr-xr-x 2 root root 4096 Dec 12 13:29 locks
-rw-r--r-- 1 root root 229 Dec 12 13:29 README.txt
进入conf目录下配置账号和权限,创建test用户密码test,可读写整个仓库
conf目录结构
-rw-r--r-- 1 root root 1080 Dec 12 13:29 authz
-rw-r--r-- 1 root root 309 Dec 12 13:29 passwd
-rw-r--r-- 1 root root 2279 Dec 12 13:29 svnserve.conf
svnserve.conf配置:
anon-access = none 匿名用户禁止访问
auth-access = write 认证用户(读写操作)
password-db = passwd 密码文件名称
authz-db = authz 权限文件名称
passwd文件设置账号
添加用户
>vi passwd
[users]
test = test
authz配置权限,test用户可读写整个仓库
>vi authz
[test:/]
test = rw
进入hooks目录
复制一个post-commit
>cp post-commit.tmpl post-commit
修改内容
#!/bin/sh
export LANG=zh_CN.UTF-8
REPOS="$1"
REV="$2"
/usr/bin/svn update [发布目录] --username test --password test --no-auth-cache
完后要在发布目录下check一个版本,以后svn有更新的时候就会自动调用
post-commit文件内的脚本自动更新到发布目录中。
创建svn仓库
svnadmin create test
这时test目录下面目录结构
drwxr-xr-x 2 root root 4096 Dec 12 13:29 conf
drwxr-sr-x 6 root root 4096 Dec 12 13:29 db
-r--r--r-- 1 root root 2 Dec 12 13:29 format
drwxr-xr-x 2 root root 4096 Dec 12 13:29 hooks
drwxr-xr-x 2 root root 4096 Dec 12 13:29 locks
-rw-r--r-- 1 root root 229 Dec 12 13:29 README.txt
进入conf目录下配置账号和权限,创建test用户密码test,可读写整个仓库
conf目录结构
-rw-r--r-- 1 root root 1080 Dec 12 13:29 authz
-rw-r--r-- 1 root root 309 Dec 12 13:29 passwd
-rw-r--r-- 1 root root 2279 Dec 12 13:29 svnserve.conf
svnserve.conf配置:
anon-access = none 匿名用户禁止访问
auth-access = write 认证用户(读写操作)
password-db = passwd 密码文件名称
authz-db = authz 权限文件名称
passwd文件设置账号
添加用户
>vi passwd
[users]
test = test
authz配置权限,test用户可读写整个仓库
>vi authz
[test:/]
test = rw
进入hooks目录
复制一个post-commit
>cp post-commit.tmpl post-commit
修改内容
#!/bin/sh
export LANG=zh_CN.UTF-8
REPOS="$1"
REV="$2"
/usr/bin/svn update [发布目录] --username test --password test --no-auth-cache
完后要在发布目录下check一个版本,以后svn有更新的时候就会自动调用
post-commit文件内的脚本自动更新到发布目录中。