SVN回滚机制

引子

  工作中遇到一个新同事提交代码时不知怎么的出现了大面积的代码覆盖,由于对SVN也不是特别了解,就看着别人处理问题,自己也验证性的实践了一下,总结一下。

总结

  svn每一次提交成功,都会有一个`编号纪录`,例如第二次提交为 2,第三次提交为3,可以点击第二次纪录进行回滚,这个回滚的意思是:
1)撤销第二次所作的修改,相当于回到第一次提交之后的状态,且`只影响第二次提交时涉及的内容`,如果只提交了一个名字为a的文件,那么只影响该文件;
2) 所有第二次之后提交的状态将会保持。不管第二次之后的提交是修改的其他文件还是同一个文件,所作的修改不会回滚到第二次的状态。
  总而言之,回滚某条纪录只针对当次提交所涉及文件的当次修改。

@mic

(Email:[email protected])

(QQ:839720759)

SVN回滚机制

时间: 2024-10-07 09:36:40

SVN回滚机制的相关文章

svn回滚版本

1.本地修改了内容,但是没有commit可以通过Revert-来覆盖当前版本. 2.已经commit了.首先第一步,应该知道需要回滚的版本编号, 第二步,选择 updata to revision svn回滚版本,布布扣,bubuko.com

oracle回滚机制深入研究

这篇文章主要描述oracle的回滚机制,篇幅可能较长,因为对于oracle的回滚机制来说,要讨论和描述的实在太多,只能刷选自己认为最有意义的一部分进行深入研究和分享 一.我们来看一个DML语句的处理过程描述 update undotest set object_type='VIEW' where object_type='PROCEDURE'; 检查shared pool中是否存在相同的语句,如果存在,重用执行计划,执行扫描运算,如果不存在,执行硬解析生成执行计划 根据执行计划中的扫描运算,检查

svn回滚版本1

我刚开始使用SubVersion时, 想把svn代码库回滚到以前某个版本,  上网找来找去都找不到(那时文档比较少), 让我郁闷了好一阵子.  现在记录一下 SubVersion回滚的方法: 第一种方法: 使用TortoiseSVN进行回滚. 很明显, 这种方法只适用于windows平台. 以下摘自 TortoiseSVN文档: B.4. 回滚版本库里的版本 B.4.1. 使用版本日志对话框 如果想恢复某个版本或者版本范围的变更,最简单的方法是使用版本日志对话框.这种方法也可以用来撤销最近的若干

Linux svn 回滚版本库

Linux代码   svn up Index/ 然后找出要撤销的确切版本: Linux代码   svn log --limit 10 Index/tpl/css/global.css 根据log怀疑是16976版本改坏的,比较一下: Linux代码   svn diff -r 16975:16976  Index/tpl/css/global.css 发现16976有错误 撤销16976版本的改动: Linux代码   svn merge -r 16976:16975  Index/tpl/cs

svn回滚版本2

svn 版本回滚 取消对代码的修改分为两种情况: 第一种情况:改动没有被提交(commit). 这种情况下,使用svn revert就能取消之前的修改. svn revert用法如下: # svn revert [-R] something 其中something可以是(目录或文件的)相对路径也可以是绝对路径. 当something为单个文件时,直接svn revert something就行了:当something为目录时,需要加上参数-R(Recursive,递归),否则只会将somethi

spring事物回滚机制 (事务异常回滚,捕获异常不抛出就不会回滚)

当异常被捕获catch的时候,spring的事物则不会回滚 为什么不会滚呢??  spring aop  异常捕获原理:被拦截的方法需显式抛出异常,并不能经任何处理,这样aop代理才能捕获到方法的异常,才能进行回滚,默认情况下aop只捕获runtimeexception的异常: 解决方案: 1.例如service层处理事务,那么service中的方法中不做异常捕获,或者在catch语句中最后增加throw new RuntimeException()语句,以便让aop捕获异常再去回滚,并且在se

关于MySQL回滚机制

在事务中,每个正确的原子操作都会被顺序执行,直到遇到错误的原子操作,此时事务会将之前的操作进行回滚.回滚的意思是如果之前是插入操作,那么会执行删 除插入的记录,如果之前是update操作,也会执行update操作将之前的记录还原 因此,正确的原子操作是真正被执行过的.是物理执行. 在当前事务中确实能看到插入的记录.最后只不过删除了.但是AUTO_INCREMENT不会应删除而改变值. 1.为什么auto_increament没有回滚? 因为innodb的auto_increament的计数器记录

MySQL InnoDB加锁超时回滚机制(转)

add by zhj: 看来我对MySQL的理解还有待深入,水还是挺深的啊,MySQL给记录加锁时,可以通过innodb_lock_wait_timeout参数设置超时时间, 如果加锁等待超过这个时间,就会回滚,但回滚的话有两种方式:第一种:回滚当前加锁的这条语句:第二种:回滚整个事务.这两种方式是通过参数 innodb_rollback_on_timeout来控制的.如果是OFF,表示加锁超时回滚时,只回滚加锁超时的那条SQL语句:如果是ON,表示回滚整个事务.默认 是OFF.在<MySQL

通过svn回滚指定版本

右击文件(也可以是文件夹),TortoiseSVN – show log,右击你想要回滚到的版本. “Revert to this revision”,这个比较好理解,也比较常用.就是把文件恢复到某个版本,然后commit,文件就回滚成功了.回滚成功后,所有的历史还存在.例如回滚到版本4,commit之后,会出现新的版本6,但是他的内容和版本4是一样的 原文地址:https://www.cnblogs.com/ynyhl/p/12169796.html