2712
ubuntu安装subversion服务(简单版)
乐果 发表于 2014 年 11 月 15 日 标签:ubuntusvn
一.准备
sudo apt-get install subversion
sudo apt-get install subversion-tools
二.创建仓库的目录
cd /opt
mkdir svn
svnadmin create svn/xxx_code
三.配置
cd svn/xxx_code/conf
1、vim svnserve.conf
内容如下:
[general]
anon-access = none
auth-access = write
password-db = passwd
authz-db = authz
realm = xxx_code
2、 vim passwd
内容如下:
[users]
user_name = password123456
3、vim authz
内容如下:
[aliases]
# joe = /C=XZ/ST=Dessert/L=Snake City/O=Snake Oil, Ltd./OU=Research Institute/CN=Joe Average
[groups]
admin = user_name
[xxx_code:/]
@admin = rw
四.启动服务
svnserve -d -r /opt/svn
五.其他方面 编写post-commit脚本:
#!/bin/sh
export LANG=en_US.UTF-8
PATH=/usr/bin
SVN=$PATH/svn
SVN_LOGIN_INFO="--username user_name --password password123456"
#SVN_LOG=/var/log/svn/${DATE}-svn.log
SVN_SRC=/opt/src/esut/
WEB_SRC=/opt/www-data/esut/
RSYNC=/$PATH/rsync
# svn update
${SVN} update ${SVN_LOGIN_INFO} ${SVN_SRC}
# rsync to web from src
${RSYNC} -aH --delete --progress --exclude=".svn/" ${SVN_SRC} ${WEB_SRC}
/bin/chmod -R 777 ${WEB_SRC}
注意:应该将post-commit脚本文件设置为可执行的权限!
六、客户端linux迁出代码
例如迁出到当前目录
sudo svn checkout svn://192.168.1.201/svn/xxx_code .
注意:此时可能会报错:
svn: No repository found in 'svn://192.168.1.201/svn/xxx_code'
把迁出命令改成:
sudo svn checkout svn://192.168.1.201/xxx_code .
此时,如果还报错:
svn: /data/svn/xxx_code/conf/svnserve.conf:12: Option expected
这种情况是svnserve.conf配置文件,配置行前面存在空格导致的:
[general]
(这里可能存在空格,去掉即可,下面类推)anon-access = none
auth-access = write
password-db = passwd
authz-db = authz
realm = xxx_code