Version control 初始性能结构

Version control 初始性能结构,version-control,perforce,Version Control,Perforce,我正在尝试为一个小游戏设置一个初始性能结构 我熟悉SVN和SCMs的“经典”(仅阅读源代码)用法 经过一些研究,Perforce似乎是管理源代码和二进制内容(如模型、纹理、声音等)的一种方式 但是,老实说,我正在努力寻找一个好的结构 我想把一切都放在源代码管理中,这意味着艺术家的源文件,加上游戏的源代码 stream depot对于开发人员/源代码来说似乎不错,但是对于艺术家来说有点麻烦。 我认为艺术家们不会乐意管理这些流以及复制/集成到分支中 所以,我的想法是,把所有的东西都放在一个普通的仓库

我正在尝试为一个小游戏设置一个初始性能结构

我熟悉SVN和SCMs的“经典”(仅阅读源代码)用法

经过一些研究,Perforce似乎是管理源代码和二进制内容(如模型、纹理、声音等)的一种方式

但是,老实说,我正在努力寻找一个好的结构

我想把一切都放在源代码管理中,这意味着艺术家的源文件,加上游戏的源代码

stream depot对于开发人员/源代码来说似乎不错,但是对于艺术家来说有点麻烦。 我认为艺术家们不会乐意管理这些流以及复制/集成到分支中

所以,我的想法是,把所有的东西都放在一个普通的仓库里,然后有另一个小溪仓库在上面加上“糖霜”

问题是我不知道这是否可能或如何实现。 我想我记得有一个论坛帖子,有人设置了一个镜像“标准分支”的流,但我找不到它

不幸的是,我的google fu让我失望了,所以我在这里问:

  • 游戏相关开发是否有某种“标准”或“推荐”的性能设置?我甚至找不到一个完整的例子:/
  • 我是否可以制作一条流,以“镜像”普通仓库上的标准分支?如果是,怎么做

  • 谢谢。

    您可以将非流媒体的内容集成到流媒体仓库

    大多数客户使用该流程将其内容从非流媒体移动到流媒体站点

    流的设计目的是为您的工作流提供更多的结构,并遵循合并向下复制向上的方法

    不使用流也有它的优点,但它更容易做一些古怪的事情,并稍微偏离轨道。因此,我不确定让艺术家在非streams环境中工作,而让其他人在streams环境中工作,是否是您的最佳解决方案

    您可能需要查看《Streams采用指南》,该指南提供了移动到Streams并使用Streams的提示:

    您还可能会发现本Merge2013演示文稿非常有用,因为它讨论了英国游戏公司如何开发和使用streams:

    此外,您可能会发现Perforce的螺旋云解决方案满足您的要求:

    希望这有帮助,
    Jen.

    我倾向于为这两个组使用流,并将它们分别放在各自的仓库中,但这并不一定有一种正确的方法。以下是一些需要考虑的关于流的数据点:

  • 流不一定意味着分支;你可以有一个“//art/main”流,艺术家只能在其中工作。他们不需要创建和维护分支(除了您通常创建分支的原因,但这些可能不会像对代码那样应用于艺术资产)
  • 除了管理代码行之外,使用流的好处是集中管理客户端规范——假设您注意到所有美工人员都提交了不需要在仓库中的巨大生成的“.foo”文件。与其试图让所有的艺术家在他们的客户端规范中添加“-/..foo”行,或者在触发器上乱搞,不如在“//art/main”流规范中添加一条被忽略的行,这会影响使用该流的所有人
  • 您可以非常轻松地在存储库的“艺术”和“代码”部分之间共享内容,无论两个团队是否使用流,一个团队是否使用流
  • 假设您设置了一个“//art”流仓库(带有“//art/main”流)和一个“//code”流仓库(带有“//code/main”加上创建其他任何有意义的流——为不同的编码人员开发流,他们希望在合并不同的功能之前单独处理不同的功能,等等)。在“//code/main”流中添加以下路径:

    import art/... //art/main/...
    
    现在“//art/main”中的所有内容都显示在“//code/main”的客户端下的“art”目录中,以及“//code/sadral”等子流的客户端。请注意,如果艺术作品生活在“本地”仓库而不是“流”仓库中,那么这种完全相同的语法也适用——仓库文件就是仓库文件


    如果您最终需要隔离艺术资产的某些版本,请记住,您可以在//艺术仓库中创建分支,而无需艺术家参与;他们只是继续在//art/main中工作,其他人可以在开发过程中根据需要进行分支/复制。

    Merge2013演示文稿在流媒体上比在游戏相关的Performance使用上更加精简,但是,事实证明,它非常好,回答了我的一些问题。我喜欢这样一个事实,即您可以拥有作为主线子集的虚拟流。我认为这对那些艺术家来说是个好办法。我要做一些本地测试。我也喜欢你的解决方案。我不知道为什么,但我一直想在我的流中添加“分支”,使过程对艺术家来说变得复杂。但是你的解决方案只有主线是好的和容易的,为什么我没有想到呢?最终,您的解决方案与P4Jen的类似。你的使用不同的站点,P4Jen的使用虚拟流和“多条主线”,除非需要,否则没有分支。我将做一些本地测试,看看是否有一种解决方案更适合我的情况(但我认为,最终,它们是一样的)。