工做经常使用svn命令-持续更新

1.svn info

    查看URL、Reversion等信息git

2.更新,修改和提交流程

    svn updatesvn

    svn add 目录或文件工具

    svn status(st)spa

    svn commit -m "comment"code

    svn add这个命令会遇到须要添加大量新增或修改项,若是一个一个add会很麻烦,在其余blog上看了一个方法(没有亲测,不过看起来是没错的):blog

脚本1:svn st|awk '{print $2}'|xargs svn addit

做用:将全部改动添加到commit中io

脚本2:svn st | awk '{if ( $1 == "?") { print $2}}' | xargs svn add  ast

做用:将全部新增的文件添加到commit中awk

    svn不像git在commit操做后还须要例如git push origin master这种push语句。

3.回滚操做

    若是没有作svn commit,使用svn revert 文件 命令便可。

    若是commit了,那么须要经过merge来回滚,步骤以下

    svn update更新项目获得最新版本号"new",接着进入须要回滚的路径,只commit本地的版本仍是旧版本,只有update以后才变成新版本

    svn log 查看该路径以前全部提交记录,找到要回滚到的版本号"old"

    svn merge -r new:old 文件 指定的文件就回滚到指定版本

    svn commit -m "comment" 提交回滚

    不过今天遇到一个问题,我想恢复删除的文件,但该路径下其余文件也有改过,例如old版本是A和B,new版本中是A',- -这个问题找了很久,最终终于明白了。正确步骤以下:

        1.建立被删除的同名文件B,svn add B,svn commit

        2.svn merge -r 最新版本:目标版本 文件名

ps:而下面的命令,实验结果是:能够将删除的文件回滚到本地,但不能提交。这条命令跟svn图形工具中update to revision相同.

svn update 已经删除的文件或要回滚的文件 -r 回滚版本

4.查看特定版本的更新

svn log -v -r r1
svn log -v -r r1:r2
相关文章
相关标签/搜索