2568

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

乐果   发表于   2014 年 11 月 15 日 标签:ubuntusvn

0

文章评论