我们的团队将一系列不同的子块集成到我们的主项目中,我们正在努力确定管理所有这些不同知识产权的最佳方式。 (从现在开始,我将把这些子项目称为知识产权“知识产权”)。
IP将是第三方供应商IP,之前的项目IP和此项目IP的新组合。以下是我们正在考虑管理所有不同IP部分的一些想法:
在物理驱动器上发布版本,并让主项目指向正确的版本。
PROS - 对SCM几乎没有依赖性:最初管理似乎更简单:
缺点 - 必须记住保持每个物理设计中心的最新状态:
使用Perforce客户端规范视图包含正确的版本。
PROS - 能够快速查看客户端规范中使用的IP:
CONS - 使用大量IP,客户端规范变得非常混乱且难以管理:每个团队成员管理自己的客户端规范(不一致):确定使用哪个IP版本不在SCM下(默认情况下) :
将不同的版本集成到一个单行客户端视图中。
PROS - 使客户端规范维护变得简单:使用标准Perforce工具可以轻松观察到对IP版本的任何更改:
缺点 - 不容易看到我们使用的IP版本:
我们的经理更喜欢#2,因为他最容易查看客户端规范并了解我们正在使用的所有IP和版本。工蜂往往非常不喜欢这个,因为这意味着我们必须尽量保持每个人的个人客户规格更新,而不是项目本身的SCM。
其他人如何处理Perforce项目中的IP以及您有什么建议?
更新
我真的倾向于解决方案#3,它看起来更清洁,更容易维护。如果有人能想到为什么#3不是个好主意,请告诉我。
答案 0 :(得分:3)
我也会选择第三种解决方案。
我无法想到任何缺点,并且在过去遇到类似情况时没有经历过任何缺点。
您可以使用明确说明哪些IP版本已分支的分支规范来安抚您的经理。然后他可以参考该分支规范而不是客户规范。
另外,如果你查找规范仓库'在帮助中,您可以设置Perforce,使其版本自动控制所有规范,包括分支规范,如果您更改IP版本,将为您提供可跟踪性。
答案 1 :(得分:0)
“每个团队成员管理自己的客户规范(不一致)”
不要那样做。让客户端规范是签入Perforce的文件。
答案 2 :(得分:0)
我建议#2,因为它是最透明的系统。是的,这将意味着更多的工作使客户保持最新,但您可以通过使用模板客户端来最小化该问题。
在我的工作中,我们使用开发人员复制的模板客户端来保持客户端的正确配置。我们用“0-PRODUCT-BRANCH”模式命名(如果需要,有时会添加平台)。然后它是来自命令行的单行命令,或者从GUI中点击几下来更新您的客户端。每当模板发生变化时,我都会向团队发送通知。
现在在我的情况下,模板更改不会经常发生。每年最多可能有5-6个,所以麻烦程度可能会有所不同。