原文: http://answers.perforce.com/articles/KB_Article/How-To-Rollback-An-Integration

当我们需要将一个branch上的代码修改集成到另一个branch的时候,我们需要执行命令p4 integ + p4 resolve + p4 submit来完成,通称我们称以上的操作为一次integration或merge。

一 rollback integration/merge

有的时候在我们做了p4 integ 来把代码从一个branch merge到了另一个branch,但是发现有错误,或者这个merge不需要了,这时我们将需要撤销我们刚才的merge操作。

1)如果你只是执行了p4 integ 还没有执行p4 submit的时候,这时候只需要简单地在你的client里执行p4 revert就可以撤销merge了。

2)如果的merge结果已经submit到了p4 server了,则考虑以下几种方法:

第一种方法: superuser执行p4 obliterate 将merge的CL从p4 server彻底删除;

第二种方法: 手动对merge中修改的文件恢复到前一个版本,即手动对merge修改的文件执行edit/resolve/submit;

第三种方法: 使用p4v提供的rollback功能,将某个CL rollback,或者把某些文件rollback到先前的CL或时间或label;

二 rollback已经提交的merge的3中方法比较

当rollback已经提交的merge,最重要的考虑是目标文件(merge修改过的文件)是否又有新的修改。如果在merge后没有新的CL修改与merge相同的文件,使用p4 obliterate是最快速且干净的方法,如果merge修改的文件被后来的其他的CL修改了,则需要考虑使用p4v中的rollback或手动edit/resolve/submit。

以下的三种方法都各有一些限制。

当使用p4 obliterate的时候,虽然merge的CL的历史记录被删除了,但是如果在merge后有新的CL修改相同的文件,则被修改的文件中merge相关的修改内容不能被删除。

当使用p4v或用以上的第二种方法手动rollback到先前的版本时,所有相关的CL的记录将不会删除。当下次从新merge的时候会遇到文件已经被integrated的问题,需要使用p4 integ -f来强制merge。

更多详细:

http://answers.perforce.com/articles/KB_Article/How-To-Rollback-An-Integration

http://answers.perforce.com/articles/KB_article/Backing-Out-Submitted-Changelists

http://answers.perforce.com/articles/KB_Article/Backing-out-a-changelist-after-multiple-subsequent-changes

完!

最新文章

  1. try...catch..finally
  2. AngularJS中使用$resource
  3. redis的备份
  4. MySQL5.5 RPM安装的默认安装路径
  5. mysql密码忘记或者不知道,怎么办?
  6. 如何让div上下左右都居中
  7. 转 一些shell经验
  8. 从C++到Qt(命令行编译,讲解原理)
  9. Linux文件系统简介及常用命令
  10. C语言中数组转化为字符串的方法
  11. c++ list 合并操作函数实例
  12. Windows证书操作
  13. 前端-JavaScript2-1——JavaScript基础复习及上次作业答案
  14. “必须执行Init_Clk函数,才能采集到二氧化碳接口485数据的问题”的解决
  15. virtual box问题记录
  16. 【H3C交换机】cpu各个进程的详细说明
  17. Java并发工具类(四):线程间交换数据的Exchanger
  18. dstat 服务器性能查看命令【转】
  19. Jsp电子商务之七 订单篇2
  20. docker内域名无法解析问题

热门文章

  1. Go语言规格说明书 之 类型声明(Type declarations)
  2. javascript 搞不清原型链和constructor
  3. 使用console进行 性能测试 和 计算代码运行时间
  4. redux最佳实践
  5. php高级工程师面试题,行不行对照看下自己的实力
  6. ZOJ 3229 Shoot the Bullet(有源汇上下界最大流)
  7. 我靠,上班eclipse看糗事百科
  8. 【AtCoder】Yahoo Programming Contest 2019
  9. BZOJ1297 [SCOI2009]迷路 矩阵乘法
  10. BZOJ1042 [HAOI2008]硬币购物 完全背包 容斥原理