我要 用户A 能够在 Perforce 中创建一个更改列表,然后将其搁置。那么我想要 用户B 能够取消搁置该更改列表并提交它。
这听起来很简单,但 Perforce 上架似乎并不像我期望的那样工作。当 UserB 运行 'p4 unshelve -s 1234' 时,它会从更改 1234 中取消所有已更改的文件,但它不会带来更改的元数据(描述、作业修复)!这意味着用户 B 可以将一个搁置的 CL 复制到一个全新的 CL 中并提交它(通过手动重新创建描述和修复),但这会留下旧的搁置 CL。
这里的逻辑是 用户B 至
有没有人遇到过这个问题?你是怎么解决的?
编辑:我应该澄清一下,我的问题非常笼统。我正在开发一个工具,其中 用户A 是开发商,和用户B 是构建系统本身。开发人员将搁置 CL,然后让构建系统取消搁置并通过一系列构建和测试对其进行验证(如果通过所有这些测试,则自动提交 CL)。如果构建系统提交它们似乎注定要失败,希望每个开发人员都记得删除他们搁置的 CL!
最佳答案
让构建系统发回成功或失败的通知,并让开发人员自己提交更改列表怎么样?
如果需要解决任何文件,尝试自动提交更改列表可能会变得棘手。您可能能够自动执行其中的一些操作,但如果存在任何冲突,则不能。
关于version-control - 如何使用 Perforce Shelving 让一个人创建更改并让另一个人提交更改?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9764979/