2019独角兽企业重金招聘Python工程师标准>>>
1、安装subversion
根据你的linux系统使用系统命令咯:
sudo apt-get install subversion
sudo yum -y install subversion
2、到某个目录下新建一个所有版本库的根目录
cd /home/jingxing05
mkdir svnrepos
cd svnrepos
3、创建多个库
svnadmin create repo1
svnadmin create repo2
svnadmin create repo___base
4、配置密码和权限
cd repo___base
echo "jingxing05=1234567890" >> conf/passwd
echo "[repo___base:/]" >> conf/authz
echo "jingxing05=rw" >> conf/authz
vi conf/svnserve.conf
anon-access = none
auth-access = write
password-db = passwd
authz-db = authz
realm= Svn Repo Base
:wq
其余两个库依法炮制
5、一个脚本来复制生成库
#!/bin/shif [ $# -lt 2 ]; thencat<<TIPtwo arguments: username and passwordusage: ./svn_repo.sh username password
TIPexit 1
fiusername=$1
upaswd=$2svnbase='/home/jingxing05/svnrepos'
idespace='/home/jingxing05/idecloud9workspace/all'#1 copy a repo_tpl
if [ -d "${svnbase}/${username}" ] ; thenecho 'WARN: ready exist,check it.'exit 1
ficp -fR ${svnbase}/repo___tpl ${svnbase}/${username}
if [ $? -eq 0 ] ; then#add user passwordecho "${username}=${upaswd}" >> ${svnbase}/${username}/conf/passwdecho "[${username}:/]" >> ${svnbase}/${username}/conf/authzecho "${username}=rw" >> ${svnbase}/${username}/conf/authzecho '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 workspace
if [ -d "${idespace}/${username}" ] ; thencd ${idespace}/${username}svn update --username ${username} --password ${upaswd}
elsecd ${idespace}svn co svn://192.168.1.100/${username}@ --username ${username} --password ${upaswd}
fiif [ $? -ne 0 ] ; thenecho 'failed'rm -rf ${idespace}/${username}rm -rf ${svnbase}/${username}exit 1
fi
echo 'success'
exit 0
shell中的指令执行 成功大多返回 0 失败或有错误返回大于0 的值
但也有很多例外,所以有很多地方请用 if [ ] 进行测试 类似 assert 成功时才进行下一步操作