`
zhangym124
  • 浏览: 338278 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

svn 回滚版本库

阅读更多

一、改动还没被提交的情况(未commit)

这种情况下,见有的人的做法是删除work copy中文件,然后重新update,恩,这种做法达到了目的,但不优雅,因为这种事没必要麻烦服务端。

其实一个命令就可以搞定:

 

 
1 # svn revert [-R] PATH

 

PATH可以是准备回滚的文件、目录,如果想把某个目录下的所有文件包括子目录都回滚,加上-R选项。

 

二、改动已经提交(已commit)

1.首先取得当前最新版本,不是最新的有可能带来麻烦:

 

1 svn update

 

假设当前版本是2582.

2.找到要回滚到的版本号,如果不清楚,查看log,diff

 

1 svn log | more
2 svn diff -r version1:version2 PATH

 

假设回滚到版本2580.

3.merge

 

 

1 svn merge -r 2582:2580 PATH

 

merge完使用diff确认结果

 

 

1 svn diff PATH

 

4.提交

 

 

1 svn ci PATH -m "Revert version from xxx to xxx because..."

 

因为又一次提交,版本号又升了一个,现在变成了2583.

 

 

三、直接将本地代码更新到某一版本

 

svn up -r 1

 

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics