linux下多版本库svn独立服务器搭建

来源:互联网 发布:手机蓝牙串口软件 编辑:程序博客网 时间:2024/06/05 17:58

1、安装subversion

根据你的linux系统使用系统命令咯:

sudo apt-get install subversionsudo yum -y install subversion

2、到某个目录下新建一个所有版本库的根目录

cd /home/jingxing05mkdir svnreposcd svnrepos

3、创建多个库

svnadmin create repo1svnadmin create repo2svnadmin create repo___base

4、配置密码和权限

cd repo___baseecho "jingxing05=1234567890" >> conf/passwdecho "[repo___base:/]" >> conf/authzecho "jingxing05=rw" >> conf/authzvi conf/svnserve.conf anon-access = noneauth-access = writepassword-db = passwdauthz-db = authz  realm= Svn Repo Base:wq

  其余两个库依法炮制

5、一个脚本来复制生成库

#!/bin/shif [ $# -lt 2 ]; then  cat<<TIP    two arguments: username and password    usage: ./svn_repo.sh username passwordTIP  exit 1fi  username=$1upaswd=$2svnbase='/home/jingxing05/svnrepos'idespace='/home/jingxing05/idecloud9workspace/all' #1 copy a repo_tplif [ -d "${svnbase}/${username}" ] ; then  echo 'WARN: ready exist,check it.'  exit 1ficp -fR ${svnbase}/repo___tpl ${svnbase}/${username}if [ $? -eq 0 ] ; then  #add user password  echo "${username}=${upaswd}" >> ${svnbase}/${username}/conf/passwd  echo "[${username}:/]" >> ${svnbase}/${username}/conf/authz  echo "${username}=rw" >> ${svnbase}/${username}/conf/authz  echo 'repo is freshly ready' fi# killall svnserve# svnserve -d -r ${svnbase} --listen-host 192.168.1.100# check if repo dir is ok, and also checkout a dir for cloud9 ide's workspaceif [ -d "${idespace}/${username}" ] ; then  cd ${idespace}/${username}  svn update --username ${username} --password ${upaswd}else  cd ${idespace}  svn co svn://192.168.1.100/${username}@ --username ${username} --password ${upaswd}fiif [ $? -ne 0 ] ; then   echo 'failed'   rm -rf ${idespace}/${username}   rm -rf ${svnbase}/${username}   exit 1fiecho 'success'exit 0

 

shell中的指令执行 成功大多返回 0 失败或有错误返回大于0 的值

但也有很多例外,所以有很多地方请用 if [   ] 进行测试 类似 assert 成功时才进行下一步操作



0 0
原创粉丝点击