• 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏吧

在提交期间保留Perforce信息

version-control 来源:Raghuveer 3次浏览

我正在编写一个包装脚本,我将在其中进行批量集成以更改分支结构。现在,我们有这样的结构:在提交期间保留Perforce信息

//depot/product/component-1/... 
//depot/product/component-2/... 
... 
//depot/product/component-n/... 

,我们正在向

//depot/product/release/component-1/... 
//depot/product/release/component-2/... 
... 
//depot/product/release/component-n/... 

我写了一个包装脚本做,每一个分支此举被捕获作为单独的一部分的质量一体化更改列表。类似于更改列表101将具有用于组件-1的整合,更改列表102将具有用于组件-2等等。最后,它会提交所有更改。这是为了缩小组件级别的提交内容。

我担心的是,如果在两者之间发生不好的事情,并且我的脚本无法提交或由于无法预料的原因,集成处于中间状态,我必须在运行此脚本之前将所有内容恢复到状态。我怎样才能做到这一点 ?有没有一种机制可以在提交给perforce本身之前坚持数据,这样我就可以回到它了?

当我说的数据,我的意思是

p4 files //depot/product/component-n/[email protected] 

我有约束输出,该脚本会由多人在做自己的一套集成的是要执行的,为什么我不能只是转储信息一个文本文件在本地。我需要一个解决方案,让只有访问perforce的人才能获得这些持久信息,以防他们不得不倒退并恢复提交。将这些信息存储在数据库中也是没有问题的。 :(

有没有办法实现这一目标?在此先感谢。非常感谢您对这个帮助。


===========解决方案如下:

如果你想把所有的整合发生或者没有,那么这就是原子变更表是。把所有的集成在一个更改列表中,要么全部都会被提交,要么都不会。

如果您确实想单独执行它们,则不需要持续输出p4 files命令。在集成之后仍旧在旧版本上,所以p4 files命令应该仍然会产生相同的输出。

如果你真的需要坚持输出,你可以检查它到Perforce。制作一些区域,如//depot/integration-records,并检查每个文件,例如//depot/integration-records/component-n.txt,因为它是生产。您可以将文件添加到集成了component-n的更改列表中,以便文件的存在或不存在将指示集成是否已完成。


版权声明:本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系管理员进行删除。
喜欢 (0)