SVN回滚版本

摘要:
需要使用回滚的场景通常是“紧急”的。今天,我们将记录如何在使用SVN时回滚到指定的版本,以便将来随时查看。方法1:右键单击文件TortoiseSVN–showrog,然后右键单击要回滚到的版本。例如,如果回滚到版本4并提交,将显示新版本6,但其内容与版本4相同。

From http://keenwon.com/1072.html

SVN是一个版本管理工具,在工作中经常使用,尤其是多人合作开发的时候,版本管理显得更加重要。需要使用回退的场景往往都比较“紧急”,今天就记录一下在使用SVN的时候怎么回退到指定的版本,方便以后随时查看。

方法一

右击文件(也可以是文件夹),TortoiseSVN – show log,右击你想要回滚到的版本。

SVN回滚版本第1张

SVN回滚版本第2张

可以看到两个选项:“Revert to this revision”和“Revert changes from this revision”。下面一个一个说:

我们假设有个文件a.js,有版本1,版本2…版本5。首先看“Revert to this revision”,这个比较好理解,也比较常用。就是把文件恢复到某个版本,然后commit,文件就回滚成功了。回滚成功后,所有的历史还存在。例如回滚到版本4,commit之后,会出现新的版本6,但是他的内容和版本4是一样的。

再来看看“Revert changes from this revision”,这个就比较纠结了,他的意思是“取消这个版本的修改”,例如我们在版本1上执行“Revert changes from this revision”,这时候问题就来了,你取消了一个“已经过期的修改”,那么这个文件该使用版本1的前一个版本呢?还是是使用当前的最新版本呢?SVN知道该怎么做,所以它提示冲突,把选择权交给用户:

SVN回滚版本第3张

如果我们同时选中版本1到最新版,执行“Revert changes from this revision”,就没有问题了,因为你把版本1之后的所有修改都“取消”了,SVN自然把文件恢复到版本1之前的版本。但是这和“Revert to this revision”的作用一样了。所以我们一般使用“Revert to this revision”就够了。

方法二

另一个方法就是使用merge命令:

SVN回滚版本第4张

选择第三个,“merge two different trees”,大意就是合并两个版本。

SVN回滚版本第5张

之后选择:把最新版本合并成你想回滚到的那个版本:

SVN回滚版本第6张

点击next,后面什么都不用改,点击”Merge

SVN回滚版本第7张

文件就回滚到了指定的版本了,commit之后,回滚完成。

免责声明:文章转载自《SVN回滚版本》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇LUA-赋值语句pycharm添加conda解释器异常解决下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

多人开发时Git下冲突的产生和解决

冲突的产生 很多命令都可能出现冲突,但从根本上来讲,都是merge 和 patch(应用补丁)时产生冲突。 而rebase就是重新设置基准,然后应用补丁的过程,所以也会冲突。 git pull会自动merge,repo sync会自动rebase,所以git pull和repo sync也会产生冲突。当然git rebase就更不用说了。 冲突的类型 逻...

SVN客户端服务器搭建与使用(二)

上一篇介绍了VisualSVN Server和TortoiseSVN的下载,安装,汉化.这篇介绍一下如何使用VisualSVN Server建立版本库,以及TortoiseSVN的使用. 首先打开VisualSVN Server Manager,如图: 可以在窗口的右边看到版本库的一些信息,比如状态,日志,用户认证,版本库等.要建立版本库,需要右键单击左边...

DataSet——合二为一,合并两个数据集的数据内容

在ASP.NET中,一个数据集可以包含多个数据表,本实例要实现的是两个数据表合并到一个数据集中,即该数据集中包含原来两个数据集中的所有表。 关键技术: 通过数据集的Merge方法可以将另外一个数据集、表集合或行数组的内容合并到当前数据集中。表的主键、表名称、约束等因素都会影响合并数据集的效果。 Merge方法主要用于将指定的DataSet及其架构合并到当前...

为什么阿里规定需要在事务注解@Transactional中指定rollbackFor?

作者:Mint6 来源:http://39sd.cn/53D5D Java阿里巴巴规范提示:方法【edit】需要在Transactional注解指定rollbackFor或者在方法中显示的rollback。 异常的分类 先来看看异常的分类 error是一定会回滚的。 这里Exception是异常,他又分为运行时异常RuntimeException和非运...

MSSQL 插入数据时候,如果存在则更新的方法分享

摘要:下文讲述MSSQL中,插入数据时,如果存在则更新,否则就插入数据的方法分享实验环境:sql server 2017 mssql中,我们可以采用 MERGE INTO 关键字实现此功能,当两者匹配成功,则运行***语句,否则运行其它语句,达到插入数据时的判断操作,具体操作方法如下所示:  create table [maomao365.com] (k...

SVN使用手册

如果开发过程中没有SVN? 软件研发过程中,任意一个项目都是由一个团队完成的,而不能依靠单一个体完成。 在团队开发过程中,资料数据的共享与同步将成为开发过程中比较突出的问题。 图一:原始开发管理模式(COPY模式) 缺点: 代码管理混乱 备份多个版本,占用磁盘空间大 解决代码冲突困难 容易引发BUG 难于追溯问题代码的修改人和修改时间 难于恢复至以...