文档章节

快速创建svn脚本

完美世界
 完美世界
发布于 2014/06/04 01:01
字数 663
阅读 38
收藏 0
点赞 0
评论 0

#/bin/bash
# auto set svn httpd
# author:liubaixun
# email:wmsjhappy@gmail.com
# subversion (SVN服务器)
# httpd mod_dav_svn mod_perl (用于支持WEB方式管理SVN服务器)
# ntsysv vim-enhanced (可选)
# yum install subversion mysql-server httpd mod_dav_svn mod_perl sendmail wget gcc-c++ make unzip perl* ntsysv vim-enhanced

# will install base software
if [ "$1" = "0" ]; then
yum -y install subversion httpd
fi
# set evn name
# svn 用于存储SVN所有文件
svnDir="/database/svn"
# svn 的项目的名字
projectName="ralink"
svnWelcome="svn for $projectName"
# svn 的登录帐号和密码
svnGroup="admin"
svnName="admin"
svnPass="123456"
#读写权限: r w
# 说明:只有svnGroup用户组有根目录的读写权。
# r表示对该目录有读权限,w表示对该目录有写权限,rw表示对该目录有读写权限。
WriteRead=rw

# 1.新建一个目录用于存储SVN所有文件
rm -i $svnDir
mkdir -p $svnDir
# 2.新建一个版本仓库
svnadmin create $svnDir/$projectName
# 3.初始化版本仓库中的目录
# 建立临时目录
mkdir $projectName $projectName/trunk $projectName/tag $projectName/branch
# 初始化
svn import $projectName/ file:///$svnDir/$projectName -m "初始化SVN目录"
# 4.删除临时建立的目录
rm -rf $projectName

# 5.添加用户
echo "$svnName=$svnPass" >> $svnDir/$projectName/conf/passwd

# 6.修改访问策略
echo "[groups]" > $svnDir/$projectName/conf/authz
echo "$svnGroup = $svnName" >> $svnDir/$projectName/conf/authz
echo "[$projectName:/]" >> $svnDir/$projectName/conf/authz
echo "@$svnGroup = $WriteRead" >> $svnDir/$projectName/conf/authz
#最后一行的* =表示,除了上面设置了权限的用户组之外,其他任何人都被禁止访问本目录。这个很重要,一定要加上!
echo "* =" >> $svnDir/$projectName/conf/authz

# 7.修改svnserve.conf文件,让用户和策略配置升效.
sed -i "/anon-access/d"  $svnDir/$projectName/conf/svnserve.conf
sed -i "/auth-access/d"  $svnDir/$projectName/conf/svnserve.conf
sed -i "/password-db/d"  $svnDir/$projectName/conf/svnserve.conf
sed -i "/authz-db/d"  $svnDir/$projectName/conf/svnserve.conf
echo "anon-access = none" >> $svnDir/$projectName/conf/svnserve.conf
echo "auth-access = write" >> $svnDir/$projectName/conf/svnserve.conf
echo "password-db = $svnDir/$projectName/conf/passwd" >> $svnDir/$projectName/conf/svnserve.conf
echo "authz-db = $svnDir/$projectName/conf/authz" >> $svnDir/$projectName/conf/svnserve.conf

# 8. please test
# 启动服务器
# svnserve -d -r /home/svn
#注意:如果修改了svn配置,需要重启svn服务,步骤如下:
# ps -aux|grep svnserve
# kill -9 ID号
# svnserve -d -r /home/svn

# 9. 配置SVN服务器的HTTP支持
# 由于SVN服务器的密码是明文的,HTTP服务器不与支持,所以需要转换成HTTP支持的格式
# set pass by http
htpasswd -bc $svnDir/$projectName/conf/webpasswd $svnName $svnPass


# 10.修改http.conf
echo "<Location /$projectName>" >> /etc/httpd/conf/httpd.conf
echo " DAV svn" >> /etc/httpd/conf/httpd.conf
echo " SVNPath $svnDir/$projectName/" >> /etc/httpd/conf/httpd.conf
echo " AuthType Basic" >> /etc/httpd/conf/httpd.conf
echo " AuthName \"$svnWelcome\"" >> /etc/httpd/conf/httpd.conf
echo " AuthUserFile $svnDir/$projectName/conf/webpasswd" >> /etc/httpd/conf/httpd.conf
echo " AuthzSVNAccessFile $svnDir/$projectName/conf/authz" >> /etc/httpd/conf/httpd.conf
echo " Satisfy all" >> /etc/httpd/conf/httpd.conf
echo " Require valid-user" >> /etc/httpd/conf/httpd.conf
echo "</Location>" >> /etc/httpd/conf/httpd.conf

# 11.修改svn目录的属主为apache帐号
chown -R apache.apache $svnDir/$projectName/

# 12.重启httpd服务
/etc/init.d/httpd restart &
exit 0
 

© 著作权归作者所有

共有 人打赏支持
完美世界
粉丝 10
博文 151
码字总数 134011
作品 0
西城
高级程序员
CentOS上快速搭建Subversion[SVN]版本控制服务器 svn服务器

这里所说的快速搭建是指建立一个私人使用的SVN服务器,不带Web访问功能,并不需要配置与Apaceh相关联的东东。 第一步:安装Subversion yum install subversion 第二步:添加运行Subversion ...

Skott
2013/09/28
0
1
SVN跨服务器配置post-commit提交后自动更新(SVN与WEB服务器不在同一台机器)

背景情况:SVN与WEB不在同一台服务器上,需要SVN提交后WEB站点自动进行SVN UPDATE更新,查阅网上的教程,发现部分的细节和权限部分没有提到导致跨服务器ssh执行更新脚本失败,手动执行post-...

PartyAnimals
06/26
0
0
linux下svn的常用操作命令总结

导入代码文件到 repo 版本库 我的代码文件存放在 /var/www/html/; svn代码版本库的路径 /application/svndata/repo (也就是刚刚我们创建的版本库的位置); 执行导入命令: svn import /va...

浅景尘
06/26
0
0
异地远程迁移SVN库同步数据

按如下 shell 脚本执行顺序一次操作即可。 1、$ cat svnlist.xml Android7.1.1_SHHAI Android7.1.1_BJMO ///////////////////////////////////////////// 各SVN项目库的名字,全部都写到这个...

万事通
2017/10/31
0
0
virtualbox的ubuntu虚拟机中搭建SVN服务器

一 安装SVN sudo apt-get install subversion 二 用自动脚本配置SVN服务器 SVN服务器的分为如下几步: 1 在ubuntu上创建SVN用户及SVN用户组 2 创建SVN根目录及项目目录 3 创建SVN数据仓库 4 ...

胖老狼
2013/02/27
0
0
CentOS下通过yum安装svn及配置

CentOS下通过yum安装svn及配置 1.环境 centos5.5 2.安装svn yum -y install subversion 3.配置 建立版本库目录 mkdir /www/svndata svnserve -d -r /www/svndata 4.建立版本库 创建一个新的S...

thinkyoung
2015/12/10
0
0
Ubuntu定时执行.sh脚本

在Ubuntu中备份svn上传的代码,将备份的文件命名为svnbackup+当前时间.dump文件(例svnbackup20100525.dump) 1.编写脚本文件(backup.sh) sudo touch backup.sh 创建脚本文件,并编辑文件 ...

Junn
2013/06/17
0
1
CentOS下通过yum安装svn及配

1.环境 centos5.5 2.安装svn yum -y install subversion 3.配置 建立版本库目录 mkdir /www/svndata svnserve -d -r /www/svndata 4.建立版本库 创建一个新的Subversion项目 svnadmin creat......

leycau
2015/05/12
0
0
Ubuntu下SVN安装和配置

一、SVN安装 1.安装包 1.$ sudo apt-get install subversion 2.创建项目目录 $ sudo mkdir /home/xiaozhe/svn $ cd /home/xiaozhe/svn/ $ sudo mkdir mypro 3.创建svn文件仓库 $ sudo svnad......

charley158
2013/12/03
0
0
CentOS下快速搭建SVN并创建版本库

安装svn服务: yum -y install svnmkdir /home/svn 创建svn版本库: <project> 版本库项目名称 <username> 用户名 <password> 密码 以下代码为创建版本库并添加一个用户的脚本 cd ~mkdir -p......

Jean
2014/11/04
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

sap netweaver developer studio安装svn插件

问题 我现在在Sap的IDE(netweaver developer studio)上面安装svn插件。 步骤 确定IDE使用的eclipse版本 Help→About SAP NetWeaver Developer Studio→Installation Details→Features→F...

亚林瓜子
1分钟前
0
0
Spring Cloud云服务架构 - commonservice-config配置服务搭建

1. 介绍 Spring Cloud Config为分布式系统中的外部配置提供服务器和客户端支持。使用Config Server,您可以在所有环境中管理应用程序的外部属性。客户端和服务器上的概念映射与Spring Enviro...

itcloud
2分钟前
0
0
大数据开发学习的内容介绍,成都大数据培训机构哪里好?

大数据开发培训已经成为了越来越多人的选择,大数据开发工程师也是各公司争相争夺的金领人才之一了,在当今科技发展非常迅速的社会里,越来越多人把职业规划投向了大数据开发。这里为大家整理...

加米谷大数据
6分钟前
2
0
函数

函数 函数是Python中最主要也是最重要的代码组织和复用手段。作为最重要的原则,如果你要重复使用相同或非常类似的代码,就需要写一个函数。通过给函数起一个名字,还可以提高代码的可读性。...

火力全開
7分钟前
0
0
gulp-webserverf启动服务,局域网无法访问

如题,gulp-server启动的服务,只能本机访问,局域网通过ip无法访问; 启动的其它项目,均可以访问成功; 网上资源,很多说什么防火墙之类的问题,都无果; 只需要给启动服务添加参数即可, ...

littleFaye
9分钟前
0
0
RabbitMQ实战:5种模式和示例

应用RabbitMQ的5种队列 一、简单队列 P:消息的生产者 C:消息的消费者 红色:队列 生产者实现思路: 创建连接工厂ConnectionFactory,设置服务地址127.0.0.1,端口号5672,设置用户名、密码...

spinachgit
10分钟前
0
0
mysql常见报错标号对应原因以及处理方法

mysql常见报错标号以及对应解决方法 报错标号 报错现象 解决方法 原因 1449 Cause: java.sql.SQLException: The user specified as a definer ('authplat_dev'@'%') does not exist 在控制台...

ChinaHYF
12分钟前
0
0
Java 监控系统技术选型

(1)操作系统监控 Sigar oshi (2)Tomcat监控 JMX 日志 (3)Oracle监控 日志 直连SQL查询 基于Druid连接池

cccyb
14分钟前
1
0
解决IDEA中moduel配置了maven依赖可是依然不能使用依赖中的类

POM.xml中明明配置了依赖,也开启了maven的 auto-import 下面的刷新maven也没用: 直到使用下面的解决办法才使依赖生效: IDEA打开右侧 maven projects 点击顶部的M图表(看下图) 出现如下对...

颖辉小居
15分钟前
0
0
Nginx proxy pass路由转发简单用法

一,在nginx中配置proxy_pass时的加不加/的问题要注意proxy_pass后的url最后的/当加上了/,相当于是绝对根路径,则nginx不会把location中匹配的路径部分代理走如果没有/,则会把匹配的...

binhu
15分钟前
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部