svn 发布脚本整合
svn提交时出现(413 Request Entity Too Large)错误解决方法
在nginx的server配置中增加
client_max_body_size 100M;
linux多实例apache+svn部署
1.首先创建多实例目录
svnadmin create /svn/psm/
svnadmin create /svn/sh/
2.赋予权限:
chmod -R 777 /svn/psm /svn/sh
chown -R apache.apache /svn/psm /svn/sh
3.修改用户权限:
vim /svn/psm/conf/svnserve.conf
anon-access = none
auth-access = write
4.整合Apache
vi /etc/httpd/conf.d/subversion.conf 加入以下:
多少个实例就添加几个location
<Location /psm>
DAV svn
SVNPath /svn/psm
AuthType Basic
AuthName "svn"
AuthUserFile /var/www/svn/project/conf/passwd
Require valid-user
</Location>
5.启动svn
svnserver -d --listen-port 3690 -r /svn/sh
svnserver -d --listen-port 3691 -r /svn/psm
6.配置用户信息
htpasswd -c passwd qinyj
导入项目: svn import /www/download/psm_server -m "psm_server" http://svn.qinyj.top/comparent/ --force-log
svn import /www/downloadsh -m "sh" http://svn.qinyj.top/comparent/ --force-log
svn co http://svn.qinyj.top/sh psm #checkout代码。
svn up svn目录 --username aaa svn代码目录。 #更新代码库。会根据隐藏文件.svn 与服务器更新代码,如果本地工作目录没有会Add。
svn ci -m "备注信息" --username aaa svn代码目录。#提交到代码库。或者到svn目录里面svn ci -m "备注" --username aaa
7.更新提交脚本
[ ! -d /code/wordpress ] && mkdir -p /code/wordpress && svn co http://svn.${svn_name}.top/sh/wordpress/ /code/wordpress && exit 1 || cd /code/wordpress #检查有没有创建工作目录
cd /code/wordpress #进入到工作目录
update_svn()
{
svn update --username ${svn_name}
if [ $? -ne 0 ];then
echo "svn update failed"
exit 1
fi
VERSION=`svn info |awk -F"[ ]+" '/Revision/{print $2}'`
TEMP="`date +%Y%m%d`${VERSION}"
NUM=`echo ${TEMP}+1|bc`
echo -e "####################\nsvn update complete"
}
svn_commit ()
{
VERSION=`svn info |awk -F"[ ]+" '/Revision/{print $2}'`
echo "cd /code/wordpress"
cd /code/wordpress
[ ! -d /root/shell_log ] && mkdir -p /root/shell_log
mkdir -p /root/shell_log/${VERSION}
svn status |awk '{if($1=="!") print $0}' |cut -b 9- >/root/shell_log/${VERSION}/svn_del.log
svn status |awk '{if($1=="?") print $0}' |cut -b 9- >/root/shell_log/${VERSION}/svn_add.log
svn status |awk '{if($1=="M") print $0}' |cut -b 9- >/root/shell_log/${VERSION}/svn_change.log
while read line ;do svn delete "$line" ;done </root/shell_log/${VERSION}/svn_del.log && echo "svn delete complete"
while read line ;do svn add "$line" ;done </root/shell_log/${VERSION}/svn_add.log && echo "svn add complete"
svn commit -m "`date +%Y%m%d%H%M%S`" --username ${svn_name} && echo "svn commit complete"
#删除认证文件
rm -f /root/.subversion/auth/svn.simple/*
}
svn 发布脚本整合的更多相关文章
- svn-maven-tomcat自动发布脚本
#!/bin/sh #svn-maven-tomcat自动发布脚本 #变量设置 svnpath=svn://10.60.10.120/研发部/xx-maven svnusername=xxx svnp ...
- T语言TC发布脚本方法
代码模式的注册码发布脚本方法 注册码项目模式的发布脚本方法 1.注册码项目发布版 2.注册码项目代理版 这两种方法都是基于注册码项目来实现的,所以在使用之前,需要先创建注册码项目.
- SVN与Eclipse整合
SVN与Eclipse整合 下载SVN插件(http://subclipse.tigris.org) 我们使用版本eclipse_svn_site-1.6.5.zip 解压到一个文件夹中 进入ecli ...
- SVN与eclipse整合和利用、SVN与Apache综合
SVN与eclipse综合 下载SVN插入(http://subclipse.tigris.org) http://subclipse.tigris.org/servlets/ProjectDocum ...
- SVN与eclipse整合与使用、SVN与Apache整合
SVN与eclipse整合 下载SVN插件(http://subclipse.tigris.org) http://subclipse.tigris.org/servlets/ProjectDocum ...
- CI持续集成系列之(九)代码发布脚本模板书写
前言 前面我们介绍了Jenkins来发布项目通过nginx来展示流程,那里只是提供了一个简单的测试脚本,接下来呢介绍一下一个比较完善的发布脚本,该脚本可实现从gitlab服务器获取代码,打包,部署到W ...
- linux 服务发布脚本升级,远程发布,指定拉取远程dev,test等分支代码
1.本地发布脚本 publish.sh #!/bin/sh currentDay=`date +%Y%m%d` currentTime=`date +%Y%m%d%H%M%S` tomcat1=/da ...
- Windows下SVN备份脚本
本站备份:svn备份与还原_脚本_(dump命令) 以下是转载记录, 转自:https://wuxiaobai.win/archives/111 用法 svnadmin dump REPOS_PATH ...
- Jenkins+GitHub 项目环境搭建和发布脚本(二)
Jenkins+gitHub项目搭建配置 项目发布脚本 profilesScript.sh (支持不同环境配置文件) #!/bin/bash ACTIVE=$ JENKINS_PATH=/var/li ...
随机推荐
- Android热修复技术选型——三大流派解析
声明,本文转载自微信公众号文章 2015年以来,Android开发领域里对热修复技术的讨论和分享越来越多,同时也出现了一些不同的解决方案,如QQ空间补丁方案.阿里AndFix以及微信Tinker,它们 ...
- AlarmManager(全局定时器/闹钟)详解
AlarmManager的使用机制有的称呼为全局定时器,有的称呼为闹钟.指定时长或以周期形式执行某项操作.通过对它的使用,个人觉得叫全局定时器比较合适,其实它的作用和Timer有点相似.都有两种相似的 ...
- 芝麻HTTP:一个采集系统的构建
整个系统: 采集系统:
- Duplicate entry '0' for key 'PRIMARY'的一种可能的解决办法
在MySQL设计好数据库往往数据库中插入数据的时候, 因为主键ID默认是不赋值的,只给其他项目赋值了,相关的SQL代码是这样的 StringBuilder strSql = new StringBui ...
- Mac 常用快捷键
可以按下组合键来实现通常需要鼠标.触控板或其他输入设备才能完成的操作. 要使用键盘快捷键,需按住一个或多个修饰键,同时按快捷键的最后一个键.例如,要使用快捷键 Command-C(拷贝),请按住 Co ...
- Struts2【拦截器】就是这么简单
什么是拦截器 拦截器Interceptor.....拦截器是Struts的概念,它与过滤器是类似的...可以近似于看作是过滤器 为什么我们要使用拦截器 前面在介绍Struts的时候已经讲解过了,Str ...
- Css多列语法笔记
columns多列属性定义: column-width:规定列的宽度(此宽度是缩放scale以后的最小宽度): column-count:规定元素被分隔的列数: column-rule设置所有colu ...
- 【BZOJ2160】拉拉队排练(回文树)
[BZOJ2160]拉拉队排练(回文树) 题面 BZOJ 题解 看着题目, 直接构建回文树 求出每个回文串的出现次数 直接按照长度\(sort\)一下就行了 然后快速幂算一下答案就出来了 这题貌似可以 ...
- PKUWC2018游记
PKUWC2018游记 Day -inf 从去年的12月底开始停课,到现在也有整整一个月的时间了. 前两周考的是OI赛制,后来就变成了IOI赛制. 整体上考的很炸,虐场的次数远少于被虐的次数. 关于去 ...
- [BZOJ1609] [Usaco2008 Feb] Eating Together麻烦的聚餐 (dp)
Description 为了避免餐厅过分拥挤,FJ要求奶牛们分3批就餐.每天晚饭前,奶牛们都会在餐厅前排队入内,按FJ的设想所有第3批就餐的奶牛排在队尾,队伍的前端由设定为第1批就餐的奶牛占据,中间的 ...