Perforce 性能-删除每个给定变更列表范围的增量

Perforce 性能-删除每个给定变更列表范围的增量,perforce,integrate,subtraction,Perforce,Integrate,Subtraction,我有一个大背景的小问题。让我问一个简短的版本,然后将其展开一点 我的问题的简短版本如下 想象一种情况——您有一个变更列表为1000到1004的分支。然后,从变更列表1004生成分支B,并添加更多修订(10051006)。之后,您需要从分支B中删除变更列表1002引入的增量。我该如何做?如果我在分支A上需要它-没问题,只需回滚到1001并重新集成1003-1004。但我需要删除一个增量,该增量是由一个分支上的变更列表引入的,该分支的历史中没有该变更列表。那么我如何才能做到“选择性删除” 我的问题的

我有一个大背景的小问题。让我问一个简短的版本,然后将其展开一点

我的问题的简短版本如下

想象一种情况——您有一个变更列表为1000到1004的分支。然后,从变更列表1004生成分支B,并添加更多修订(10051006)。之后,您需要从分支B中删除变更列表1002引入的增量。我该如何做?如果我在分支A上需要它-没问题,只需回滚到1001并重新集成1003-1004。但我需要删除一个增量,该增量是由一个分支上的变更列表引入的,该分支的历史中没有该变更列表。那么我如何才能做到“选择性删除”

我的问题的抒情背景如下。 早在我还是ClearCase工程师的时候,我有时使用一种叫做“减法合并”的特性。我调用了“merge”命令,指出了两个版本来标识一个delta和一个类似于“remove”的标志(这是几年前的事了,我忘记了确切的标志)。它所做的是,它删除了尖三角洲,而不管该三角洲实际上是在什么时候引入的——1次提交或一年前。所以它是一个减法合并,可以用作回滚,而不删除任何版本,有点“删除”一些增量

现在我使用Perforce,可以看到“Rollback”命令,该命令允许生成一个变更列表,将增量从“Now”移回我指定的变更列表。这就是Perforce知识库建议您在需要删除某些增量时应该做的事情。如果您需要删除一系列变更列表,那么您需要将整个变更列表堆栈从“现在”回滚到前一个变更列表,然后重新集成除了您想要丢弃的变更列表之外的所有内容。So-删除N个变更列表,然后重新整合N-1个变更列表。我不知道。。。这对我来说是个开销

所以我问Perforce用户,你们知道如何在Perforce中进行“减法积分”吗


提前谢谢。

如果我这样做,我会在变更列表1001中基于分支a创建分支C。然后,我将从分支A和B中提取必要的额外工作到C,当然,没有从A中提取变更列表1002。

如果我这样做,我将基于变更列表1001中的分支A生成分支C。然后,我将必要的额外工作从分支A和B拉到C,当然,不需要从A拉变更列表1002。

将1001重新集成到分支B中(使用-I标志忽略以前的集成历史),并从1001中获取所有更改,在分支B上生成1007变更列表。然后在其上重新集成1005和1006。除非1005和1006涉及1002-1004中的一些更改,否则您可能必须更具选择性。

将1001重新整合(使用-i标志忽略以前的集成历史)到分支B中,并从1001中获取所有更改,在分支B上创建1007更改列表。然后在分支B上重新整合1005和1006。除非1005和1006涉及到1002-1004中的一些更改,否则您可能需要更具选择性。

似乎我错过了眼前的关键性能功能。。。“退出提交的变更列表”是正确的做法。看

似乎我错过了眼前的关键性能功能。。。“退出提交的变更列表”是正确的做法。请参见

我已经这么做了,因为这是最简单但直接的解决方案。我只是在寻找“好”的解决方案:)这是我已经做过的,因为这是最简单但直接的解决方案。我只是在寻找“好”的解决方案:)这和官方文档推荐的方法差不多——回滚(通过强制重新集成)和更新,其余的变更列表放在最上面。但这看起来与我提到的功能很接近,谢谢。这不会错过1003和1004吗?这与官方文档推荐的方法差不多——回滚(通过强制重新集成)和更新,其余的变更列表位于顶部。但这看起来很接近我提到的功能,谢谢。这不会错过1003和1004吗?