欢迎来到天天文库
浏览记录
ID:62037335
大小:174.42 KB
页数:3页
时间:2021-04-15
《Unity3D游戏开发之使用SVN对Unity进行版本控制.docx》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、Unity3D游戏开发之使用SVN对Unity进行版本控制关于这个国内各种简单到家的文章让人搞不懂,而且场景合并,prefab合并等关键问题都说没法解决,其实本质就是因为它们都是二进制文件,所以SVN没法对其合并,但事实上Unity是支持把这些文件都强制使用文本的!后面会提到。另外本人英文能力有限,渣翻译。虽说是翻译,但其实没照搬。正文: 对于任何项目来说版本控制都是至关重要的,但对于Unity来说是个头疼的问题。现在Unity的最新版是3.5,已经可以简单的进行版本控制了(说明:现在是4.x了,当然3.5都有的功能4.0不可能没有)。
2、步骤:Edit>ProjectSettings>Editor选择之后到Inspector窗口,如图所示VersionControl一栏默认模式是disabled,改成“MetaFiles”,这样之后Unity会对所有资源文件创建相应的.meta文件,这会让你的工程更好的配合SVN(吐槽:其实我完全不知道是干嘛用的,那些.meta.....)。DEMO部分略过,只是介绍那些个.meta的,自己试试丢几个资源进去然后到文件夹里面去看看就知道了。 Unity使用meta文件记录数据和资源(asset)的设置,所以包括文件夹在内都会有同名的.m
3、eta文件。现在你可以关闭Unity然后把工程目录里面的Library文件夹删掉。然后仅提交“Assets”和“ProjectSettings”两个文件夹到SVN。然后重新打开工程,Unity会重新导入所有资源。你不需要把Library文件夹导入SVN。需要注意的是,如果你想移动或重命名文件,你要把它的.meta文件也以前移动或者重命名,如果你是在Unity里面移动,就不需要考虑这个(说明:这里没提到重命名是不是也一样,实际上只要你是在Unity里面操作的就不用担心.meta文件,Unity会自行处理,当然我只是用4.0测试了而已)。
4、剩下的就是关键的二进制文件问题。因为场景和prefab都是用二进制保存的,而如果多个人同时操作场景或修改prefab,那么因为SVN无法合并二进制文件而产生冲突。而事实上,Unity是可以强制把所有文件都保存成文本的。还是这张图 下面的AssetSerialization(资源序列化)选项就是序列化方式,默认是mix(混合),这里强制改成ForceText(强制文本),然后关闭Unity,重新打开,全部Unity自己生成的二进制资源都变成文本了,这样SVN就可以对齐合并,当然还是要人为的避免冲突,除非你摸透了那些序列化文本的含义,可以手
5、动编辑冲突。看了之后感觉自己手动编辑的可能性较低,所以场景还是尽量不要同时编辑,否则可能会出现不可预料的情况,这个只能自己使用后凭经验行事了。文章出处【狗刨学习网】欢迎来到我们的狗刨学习网。
此文档下载收益归作者所有