zoukankan      html  css  js  c++  java
  • svn 回滚到上一个版本shell 脚本

    #!/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("
    ","");print}') #找出最近的版本,并进行格式化
    echo 'verions finding....'
    echo $version_list  #版本号 最近两个
    rocback_version=$(svn log --limit 2|tac |sed -n 4p|awk '{print $1}') #要回滚的前一个版本号
    echo -e "
    "
    echo 'Version number that you want to roll back'
    echo -e "
    "
    echo $rocback_version #版本号
    echo -e "
    "
    echo 'are you sure of to ' $rocback_version ' Yes or No' #确定要回滚过去
    echo -e "
    "
    read answer  #读取用户输入
    if [ $answer == "Yes" ]
    then
            svn up -r $rocback_version #回滚代码
            echo -e "
    "
            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/

  • 相关阅读:
    sgu101Domino
    KM模版
    UVA11383 Golden Tiger Claw(KM算法)
    POJ3565Ants(KM算法)
    POJ3041Asteroids(二分图最小点覆盖)
    UVA1175 Ladies' Choice(稳定婚姻问题,二分图)
    POJ1273Drainage Ditches(裸的最大流)
    UVA1201 Taxi Cab Scheme(POJ2060)DAG的最小路径覆盖
    二分图最大匹配数模版
    11419 SAM I AM(二分图)
  • 原文地址:https://www.cnblogs.com/jackluo/p/4649023.html
Copyright © 2011-2022 走看看