Unity * .meta文件,SVN和外部共享存储库

时间:2015-03-19 20:06:11

标签: svn unity3d svn-externals

我有几个Unity Pro(4.5),所有这些项目都需要共享一个共同的SVN资产库。这主要包括脚本,但它也可能有其他资产。

最初,我通过在适当的目录上使用svn:external属性来设置它。但是,这不起作用。因为* .meta文件是按项目生成的。出于这个原因,我无法在共享存储库中提交* .meta文件。这最终导致资产参考被打破。

如何正确地在多个Unity项目之间创建共享外部存储库?是否可以使用Unity处理* .meta文件?

1 个答案:

答案 0 :(得分:1)

元文件是资产引用所必需的。他们为资产提供了guid,用于场景和预制件的序列化等。因此,如果您将场景或预制件放入存储库,那么每个引用的资产也应该提交其元文件。如果你不这样做,那么Unity将为你的资产生成新的图元文件并给它们随机的guid,打破所有引用。

因此,您的公共存储库必须包含其包含的所有资产的元文件。如果你从一开始就没有这样做那么你应该从现在开始。打开其中一个项目,修复任何损坏的引用并提交所有元文件以及对属于公共存储库的对象的任何其他更改。然后,在使用公共存储库的每个其他项目中拉取并覆盖所有内容。如果现在出现任何损坏的引用,那么它们应该只来自本地场景。修复它们。

现在,对于您的下一个项目,您可以简单地提取包括元文件在内的所有内容。 Unity将使用元文件告诉它使用的guid,所有引用都将完好无损。