您的位置:首页 > 其它

工作常用svn命令-持续更新

2016-09-29 00:00 387 查看

1.svn info

查看URL、Reversion等信息

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

svn update

svn add 目录或文件

svn status(st)

svn commit -m "comment"

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

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

作用:将所有改动添加到commit中

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

作用:将所有新增的文件添加到commit中

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
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: