在linux上创建仓库以及一些最基本操作
创建仓库 svnadmin create 仓库名称
检出 svn co svn://192.168.1.133/repos /web/www/html/website
更新 svn up /web/www/html
开启 svnserve -d -r /web/svn
遇到的问题
1.SVN客户端 tortoiseSVN,show log 没有显示日期,作者,备注信息
解决办法:
修改svn配置文件:仓库 /conf/svnserve.conf 改为: anon-access = none auth-access = write
2.多用户访问多仓库,一个认证文件?如何创建仓库?
解决办法:
目录结构
/web/svn /web/svn/websiteA (一个仓库)
/web/svn/websiteB (另外一个仓库)
/web/svn/websiteC (再一个仓库)
/web/svn/websiteA/conf/svnserve.conf (每一个仓库都有)
设置各个仓库中的 svnserve.conf
password-db = /web/svn/codeAuth/passwd
authz-db = /web/svn/codeAuth/authz
/web/svn/auth (存放认证相关文件,各个仓库共用)
/web/svn/codeAuth/authz (设置用户,用户组,权限)
/web/svn/codeAuth/passwd (设置用户密码)
3.同步更新问题 在 /web/www/html/websiteA 目录 checkout 一份,作为本地测试用,要求仓库有新的提交时 /web/www/html/websiteA 自动更新
解决办法
在创建仓库目录中有个 hooks (简称钩子程序),在此目录新建 post-commit
REPOS="$1"
REV="$2"
export LANG=en_US.UTF-8
svn update /web/www/html/websiteA --username xxxx --password xxxx
REPOS="$1"
REV="$2"
export LANG=en_US.UTF-8
svn update /web/www/html/websiteA --username xxxx--password xxxx
echo 'whoami',$REPOS,$REV >> /web/svn/repos/hooks/svn_hook.log
#mailer.py commit "$REPOS" "$REV" /path/to/mailer.conf