Unity在SVN版本管理里的配置

来源:互联网 发布:数据库原理 pdf 网盘 编辑:程序博客网 时间:2024/06/05 20:54

新项目要使用SVN来管理unity项目,而之前更多的是使用AssetServer来管理的,为此查了网上各位大牛们的经验,在这里记录下。

====================================================================================================================================

本文参考的原文出自 jjiss318 


        

使用Unity3D也有一段时间了,由于团队一直使用SVN进行版本管理,现总结一下:

(1) Unity3D的二进制资源必须加锁进行版本控制,因为它没办法merge;

(2) Unity3D自己产生的C#工程相关文件,包括VS产生或者Mono产生的,都不需要归入版本控制;

(3) 在新加入项时,Unity3D会产生一个同名的.meta文件,这个文件记录了此项一个唯一的64位的guid,这个文件必须上      传,否则会出现各种缺失的异常情况(比如脚本Miss等)

(4) 对于Library文件夹,有以下几个.Asset文件需要进行版本管理:

               TimeManager

               TagManager

               QualitySettings

               ProjectSettings

               NetworkManager

                InputManager

                EditorBuildSettings

               DynamicsManager

               AudioManager

即便如此,在使用Editor进行开发时,由于需要经常改动场景的.unity 文件,而这个是二进制的,所以需要得锁且不能Merge。感觉并行开发的难度还是比较大的,Unity3D还是比较适合个人开发者和较小团队开发,对于大型团队开发,无论是从版本管理还是代码结构上,都觉得不太方便和自然。

======================================================================================================

本文参考的原文出自小汽车


虽然unity有自己的Asset Server,但始终感觉那个不方便,而且不能管理相关的需求、设计文档,除非你把这些放进Assets文件夹,不过我估计没人喜欢这么做。

Unity 3.5版本以后,使用SVN要方便一些了。因为必要的*.asset文件全部被独立的放在了ProjectSettings文件夹下。

所以我们只要把Assets、ProjectSettings两个文件夹提交到SVN来管理即可。

可以为根目录添加svn:ignore属性,内容为

Library

Temp

obj

这样,这些内容就不会被提交了。

另外还有一项设置别忘了。菜单 Edit / Project Settings/ Editor

使用SVN的时候,这一项一定要选Meta Files,默认是Disable。

好了。把除Assets、ProjectSettings之外的文件夹全部添加到忽略列表里。提交,Ok!

最后还有一些建议,场景文件(*.unity)最好使用锁定检出。给场景文件添加属性 svn:needs-lock 内容为 *

===================================================================================================================

此处留出作为最后自我体验完的总结段(暂)

===================================================================================================================