linux svn自动提交,svn 定时自动提交
Linux 端的svn 定时自动提交如果一个提交操作是定向定时的重复动作,我们可以把commit 的操作和参数对象抽象出来,封装在脚本中执行。并将脚本配置在crontab 中定时执行。
commit 操作解析
1. 当前workcopy 里各文件的状态 : svn stat
2. 当前状态分析:
? Tests/dxj/case 1.1.1.test
! Tests/dxj/modify sgw
M Tests/dxj/modify sgw
? 表示新增文件,需要用svn add file 加入版本控制标识,才能使用commit 默认提交 。
!表示本地已删除的受控文件,需要用svn delete file 加入版本控制标识,才能使用commit 默认提交 。
M表示本地与上次更新的文件比较有修改,会默认在commit 的时候提交
3. 分离不同状态的文件并获取列表:
svn st | grep "? \+" | sed "s/? \+//" > $Add_File
"? \+" 表示匹配"?问号及其后的连续空格"。正则式 + 用转义符 \+ 表示多次匹配前一个字符,前一个字符是空格。
sed "s/? \+//" :sed "s/A/B/" 表示用B 替换A 。 这里A="?问号及其后的连续空格" ,B=空, 即去掉前面一截,只保留文件列表 ,并写到$Add_File中
4. 把列表中的文件传给svn add 命令,加入版本控制:
cat $Add_File | xargs svn add >>$LogFile
为文件添加版本控制标识,命令为 svn add filename 。
这里用管道|接收上一个命令cat 的结果,并用xargs 把前面的结果做为后一个命令的参数。
5. 带参数commit
svn ci -m 'auto commit by script' --username svnmgr --password xxx >>$LogFile
ci 表示 commit
-m 后面用引号加上 massage
--username 用户名
--password 密码
crontab 配置
> crontab -e
进行编辑定时任务列表,加入一行
10 5 * * * /public/lcf/autoapp_commit.sh
其中 前五部分表示: 分 时 日 月 星期 第六部分表示命令
以上 例子含义为:每天5点10分执行/public/lcf/autoapp_commit.sh
:wq 保存
>crontab -l# m h dom mon dow command
10 5 * * * /public/lcf/autoapp_commit.sh
autoapp_commit.sh
#!/bin/bash
DIR="/public/autoAPP"
Add_File="/public/lcf/add_file.list"
Del_File="/public/lcf/del_file.list"
Time=`date +%Y%m%d%H%M`
LogFile="/public/lcf/$Time.log"
cd $DIR
# 判断是否有新加文件
svn st | grep "? \+" | sed "s/? \+//" > $Add_File
svn st | grep "! \+" | sed "s/! \+//" > $Del_File
add_num=`cat $Add_File | wc -l `
del_num=`cat $Del_File | wc -l `
if [ $add_num == 0 ];then
echo "no file add" >>$LogFile
else
echo "svn add" >>$LogFile
# 添加所有新文件
cat $Add_File | xargs svn add >>$LogFile
fi
if [ $del_num == 0 ];then
echo "no file delete" >>$LogFile
else
echo "svn delete" >>$LogFile
# 删除所有本地缺失的文件
cat $Del_File | xargs svn delete >>$LogFile
fi
# 提交
svn ci -m 'auto commit by script' --username svnmgr --password xxxxxx >>$LogFile
rm $Add_File $Del_File
linux svn自动提交,svn 定时自动提交相关推荐
- 【MySQL】Linux端-实现Mysql数据定时自动备份
Linux端-实现Mysql数据定时自动备份 创建存放备份 sql 的文件夹 备份数据尽量存放在Linux单独挂载的磁盘上,保证数据可靠性.磁盘建议使用EXT4分区格式. [root@localhos ...
- linux mint回收站,Autotrash:定时自动删除旧垃圾的命令行工具
Autotrash 用于自动删除旧的垃圾文件,它是一个命令行工具,通过 Autotrash 可以删除超过指定时间在回收站的文件,有了它,你不需要清空回收站或者是执行 SHIFT+DELETE 以清除文 ...
- python自动抽奖_Python定时自动参与抽奖助手抽奖
打开localhost:8002的web管理端页面,此时应该已经可以看到数据请求了. 然后在手机上访问小程序,抽奖助手. 如果手机流量很杂影响筛选的话,可以在管理页面手动设置filter: 后续的步骤 ...
- jenkins + svn + maven +svn 实现当SVN提交代码后自动触发打包部署
前言 主流的开发模式都是采用前后端分离的方式,我们作为coder在功能开发初期需要不断的迭代代码与前端进行联调,提供在容器中最新代码,虽然可以通过在编译器中打完包后在放到容器运行,但是显然这种方式是既 ...
- linux svn配置提交输入备注,linux下svn服务强制添加备注(注释)提交
标签: linux下svn服务强制添加备注(注释)提交 Linux版本: line-height: 26px; white-space: normal; background-color: rgb(2 ...
- linux svn强制注释,svn强制提交时添加注释
svn强制提交时添加注释 1. 需求 领导要求开发在提交代码时必须添加注释,经过查资料,实验,然后实现领导的要求. 2. 查看资料 参考svn文档,以及网上博客 通过查看资料,一步一步的实现脚本 ...
- 将项目代码上传至svn服务器,xcode 把项目代码提交到远程SVN服务器
环境 xcode 7 Mac air xcode默认支持GIT源码管理工具,但现在想把代码提交到已有到SVN服务器上,步骤如下: 1,在safari中打开svn链接地址,信任证书,输入用户名密码 , ...
- svn的更新、合并、提交
当本地文件没有改动,服务器文件改动的时候,更新会从服务器取文件覆盖当前文件 当本地文件有改动,服务器文件没改动的话,不会更新此文件 当本地文件有改动,服务器文件有改动的话,如果改动的部分不冲突,就会合 ...
- linux 程序定时重启tomcat,linux下实现tomcat定时自动重启
tomcat自带的脚本中没有提供直接restart的模式,但是有start和shutdown两种模式.要实现restart模式,实际上只需要判断是否已经启动tomcat,若已经启动则限制性shutdo ...
最新文章
- Swift学习: 从Objective-C到Swift
- IP 网络性能的度量标准
- Android C/C++ 开发
- 夯实基础js - 语句篇
- 使用VS Code开发 调试.NET Core 应用程序
- 产品运营实战系列-产品设计从0到1全流程:以优惠券为例
- 二维有限体积 matlab,二维有限体积法计算热传导及源码.pdf
- AppWeb或云打分时,附加分相关问题
- 怎样写 Linux LCD 驱动程序
- 视频教程-SQL语句视频课程(进阶版)-Oracle
- js实现椭圆轨迹_利用js实现div画椭圆曲线运动特效代码
- 好压 v6.3.11130 绿色纯净版(编程必备软件)
- 心力:创业者和管理者如何在事与难中精进(附提升心力的12种方法)
- Linux使用Maven部署SpiderFlow爬虫平台
- 当C++遇到空指针异常......
- 上篇: php 微信公众号 基于Thinkphp3.2框架开发
- cj.exceptions.CJException: Access denied for user XX to database 问题解决记录
- 【GameMaker 极速入门】#1环境配置
- background-attachment: fixed
- 超级联盟战队,等待你的加入
热门文章
- 详解BSCI实验四:配置BGP
- 《Python for Data Analysis》之 Series
- nginx参数优化杂记
- 解决mac上mariadb不能远程访问的问题
- PHP的优点和缺点分别是什么,CSS的优点和缺点分别是什么
- python注解实现原理_Python3注解+可变参数实现
- python求无序列表中位数_python 实现在无序数组中找到中位数方法
- win7x64注册表显卡渲染速度_Geek3D GpuTest GUI(显卡测试软件)下载-Geek3D GpuTest GUI(显卡测试软件)免费版下载v0.7.0...
- java中的多态_Java中的多态
- 单片机值得学吗?会单片机能找什么工作?