博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
svn 回滚到上一个版本shell 脚本
阅读量:7122 次
发布时间:2019-06-28

本文共 1507 字,大约阅读时间需要 5 分钟。

#!/bin/sh###############################       2015-07-15           ##   author jackluo           ## Email net.webjoy@gmail.com ###############################version_list=$(svn log --limit 2|sed '1d'|sed '$d'|awk -F '|' '{print $1}'|awk -v RS="" '{gsub("\n","");print}') #找出最近的版本,并进行格式化echo 'verions finding....'echo $version_list  #版本号 最近两个rocback_version=$(svn log --limit 2|tac |sed -n 4p|awk '{print $1}') #要回滚的前一个版本号echo -e "\r\n"echo 'Version number that you want to roll back'echo -e "\r\n"echo $rocback_version #版本号echo -e "\r\n"echo 'are you sure of to ' $rocback_version ' Yes or No' #确定要回滚过去echo -e "\r\n"read answer  #读取用户输入if [ $answer == "Yes" ]then        svn up -r $rocback_version #回滚代码        echo -e "\r\n"        echo 'Code is rocback is OK !!!^__^!!!'else        echo "Abandoned operation program exit" #放弃操作fi

1、保证我们拿到的是最新代码:

svn update

假设最新版本号是28。

2、然后找出要回滚的确切版本号:

svn log [somefile]

如果log很多,可以使用参数--limit

svn log --limit 10 [somefile]

假设根据svn log日志查出要回滚的版本号是25,此处的somefile可以是文件、目录或整个项目

如果想要更详细的了解情况,可以使用

svn diff -r 28:25 [somefile]

3、回滚到版本号25:

svn merge -r 28:25 [somefile]

为了保险起见,再次确认回滚的结果:

svn diff [somefile]

发现正确无误,提交。

4、提交回滚:

svn commit -m "Revert revision from r28 to r25,because of ..."

提交后版本变成了29。

将以上操作总结为三条如下:

1. svn update,svn log,找到最新版本(latest revision)

2. 找到自己想要回滚的版本号(rollback revision)

3. 用svn merge来回滚: svn merge -r 28:25 somefile

注意:虽然 svn up -r 25 somefile 也可以使文件回滚,但是当提交时由于不是最新版本而无法提交,还需要先更新,拷贝,再提交,所以不建议使用。

补充:

svn忽略文件或文件夹

svn propset svn:ignore '*' template_c/

转载地址:http://ccoel.baihongyu.com/

你可能感兴趣的文章
JSTL+EL-----消灭java的JSP语言(去伪存精版)
查看>>
JAVA设计模式之桥接模式
查看>>
通用虚拟机连接外网配置
查看>>
sscanf() 函数
查看>>
poj - 1061 青蛙的约会【扩展欧几里】
查看>>
centos redis 主从配置+哨兵模式
查看>>
错题解析
查看>>
[SDOI2011]染色 BZOJ2243 树链剖分+线段树
查看>>
DNS检测
查看>>
ssl 握手过程【收藏】
查看>>
Delphi常用取整函数
查看>>
Html中空格转义字符
查看>>
微信公众平台开发--生成带参数二维码
查看>>
随笔归档
查看>>
JAVA基础--super关键字
查看>>
Integer和String "+""=="方法的不同
查看>>
Codeforces Round #426 (Div. 2) problem C
查看>>
cs3动画
查看>>
Python CNN卷积神经网络代码实现
查看>>
使用异步I/O大大提高应用程序的性能
查看>>