SVN 版本回退
当我们想放弃对文件的修改,可以使用 SVN revert 命令。
svn revert 操作将撤销任何文件或目录里的局部更改。
我们对文件 readme 进行修改,查看文件状态。
root@runoob:~/svn/runoob01/trunk# svn status
M readme
这时我们发现修改错误,要撤销修改,通过 svn revert 文件 readme 回归到未修改状态。
root@runoob:~/svn/runoob01/trunk# svn revert readme
Reverted 'readme'
再查看状态。
root@runoob:~/svn/runoob01/trunk# svn status
root@runoob:~/svn/runoob01/trunk#
进行 revert 操作之后,readme 文件恢复了原始的状态。 revert 操作不单单可以使单个文件恢复原状, 而且可以使整个目录恢复原状。恢复目录用 -R 命令,如下。
svn revert -R trunk
但是,假如我们想恢复一个已经提交的版本怎么办。
为了消除一个旧版本,我们必须撤销旧版本里的所有更改然后提交一个新版本。这种操作叫做 reverse merge。
首先,找到仓库的当前版本,现在是版本 22,我们要撤销回之前的版本,比如版本 21。
svn merge -r 22:21 readme
如何使用TortoiseSVN将文件回退到某个版本
在使用SVN对文件进行版本管理的时候,如果我们想把这个文件回退到某个历史版本该怎么做呢?下面我就简单给大家介绍一下如何通过TortoiseSVN来回退文件到某个历史版本。
工具/原料
-
TortoiseSVN
方法/步骤
-
1
首先选中要回退的文件,右键——【TortoiseSVN】——【Show log】,打开【Log Messages】窗体,在这里可以看到该文件的各个版本(revision)的信息。
-
2
在【Log Messages】窗体上的Revision列表中选中我们要回退的历史版本(revision),右键菜单,里面有一个选项【Update item to revision】,点击这个选项,可以将文件更新到该修订版本。
-
3
在【Log Messages】窗体上的Revision列表中选中我们要回退的历史版本(revision),右键菜单,里面还有另外一个选项【Revert to this revision】,点击这个选项也可以将本地文件的内容变得和该修订版本一样,但是它和【Update item to revision】不同的是它只改变了文件的内容,文件的revision号没有改变;而【Update item to revision】不仅改变了文件的内容,同时也改变了文件的revision号。
-
4
综上,假如我们一不小心把文件改错了并提交到了服务器上,我们要取消这些修改的话,首先就是将这个文件还原到上一个修订版本的内容(Revert to this revision操作),然后将这个文件重新提交,那么服务器上的这个文件就恢复为了修改之前的内容,实现了文件的回退。