(转)Unity3D工程版本管理方案

自:http://blog.dou.li/unity3d%E5%B7%A5%E7%A8%8B%E7%89%88%E6%9C%AC%E7%AE%A1%E7%90%86%E6%96%B9%E6%A1%88.html

Unity进行多人协作开发时必定会涉及资源、代码、配置的版本管理。这里介绍一下用SVN、GIT或其它版本管理系统进行Unity工程版本管理的方法。

新建一个Unity工程,目录结构基本是这样的:

  • Assets、Library、ProjectSettings目录
  • 运行时还会多出Temp目录
  • 如果用Monodevelop或VS打开过还会生成一堆工程文件

最终大约是这样:

Unity工程中有很多二进制文件,会频繁导致冲突,Library目录的文件在每次Unity Editor打开都会发生变化,经常会冲突。

要保证少冲突需要做到:

  1. 将创建Unity工程需要的最小量的文件提到版本库
  2. 减少二进行文件的存在

将Unity工程导入版本库,且保证最少冲突的方法

修改Unity工程的默认版本管理方式,Edit->Project Settings->Editor打开设置面板

 

如图,设置Version Control的Model为Meta Files,表示以meta文件来记录资源版本。

默认为Disabled,这样在无Library目录情况下会出现各种问题(后面会讲到Library不会提到版本库)。

文本化场景文件,Edit->Project Settings->Editor打开设置面板

设置Asset Serialization的Mode为Force Text,表示以纯文本形式保存unity文件。

Mixed和Force Binary都是二进制,不利于版本管理。

  1. 将Assets、ProjectSettings目录传到SVN、GIT或其它版本库
  2. 别人CheckOut这两目录后,第一次在Unity Editor中Open Project…后会自动生成Library目录,所以Library无需纳入版本管理
时间: 2024-11-13 16:47:33

(转)Unity3D工程版本管理方案的相关文章

Unity3D工程版本管理方案【转自 兜里】

参阅:http://outofmemory.cn/wr/?u=http%3A%2F%2Fblog.dou.li%2Funity3d%25e5%25b7%25a5%25e7%25a8%258b%25e7%2589%2588%25e6%259c%25ac%25e7%25ae%25a1%25e7%2590%2586%25e6%2596%25b9%25e6%25a1%2588.html Edit-Project Setting- Editor

如何给unity3d工程加入依赖的android工程

最近在忙着接平台的事,需要接入各种各样的android平台sdk来发布.在接sdk的时候遇到了这样的一个情况,有点麻烦,所以纪录一下. 有些sdk的接入是提供jar包,这样的可以简单地将jar包制作成android plugin,加入到unity工程中,打包成apk输出. 而还有一些sdk,则是提供了一个lib工程.在sdk提供的文档里说明,要在android工程中,通过添加依赖的方式来添加.但是对于unity工程,这个就有点不一样. 经过多次试验,需要步骤: 1. 将sdk工程整个工程目录[注

Unity3D热更新方案网摘总结

参考:http://blog.csdn.net/guofeng526/article/details/52662994 http://blog.csdn.net/u010019717/article/details/50853207 "热更新"这个词,在Unity3D的应用下,是有些语义错误的,但是作为大家都熟知的一项技术,我们姑且这么叫它,相信很长时间内,大家依然还会这么叫,甚至有人叫它"暖更新". 一.什么是热更新? 广义定义 无需关闭服务器,不停机状态下修复漏

解决Xcode6.0.1编译Unity3D工程报错

错误信息大概如下 Undefined symbols for architecture i386: "_clock$UNIX2003",.....等 大概就是引用了一个链接库出错了. 解决办法如下: 打开OC工程里的Main.mm 加入下面代码 #include <time.h> extern "C" { clock_t clock$UNIX2003(void) { return clock(); } }

【书摘】一种基于Git的版本管理方案

本篇摘录自<前端工程化体系设计与实践>一书,笔者认为是一套相对合理的方案,建议团队可以根据实际情况进行调整并增加协作命名规范. master分支--主分支 存储已发布版本的源码,不能在此分支进行开发,只能合并release和hotfix分支. hotfix分支--热修复分支 用来修复线上紧急Bug,以线上版本对应的master分支为基础新建生成. release分支--预发布分支 也称为提测分支,可以在此分支上修复Bug,以develop分支为基础新建,或合并develop分支. develo

波分复用技术传输工程组网方案

波分复用技术 1 波分复用技术 波分复用指在同一根光纤中同时让两个或两个以上的光波长信号通过不同光信道各自传输信息,称为光波分复用技术,简称WDM.光波分复用包括频分复用和波分复用.光频分复用(FDM)技术和光波分复用(WDM)技术无明显区别,因为光波是电磁波的一部分,光的频率与波长具有单一对应关系.通常也可以这样理解,光频分复用指光频率的细分,光信道非常密集.光波分复用指光频率的粗分,光倍道相隔较远,甚至处于光纤不同窗口.  光波分复用一般应用波长分割复用器和解复用器(也称合波/分波器)分别置

unity3d热更新插件uLua学习整理

前言 IOS不能热更新,不是因为不能用反射,是因为System.Reflection.Assembly.Load 无法使用System.Reflection.Emit 无法使用System.CodeDom.Compiler 无法使用这三个不能用,就把传统dotnet动态路径坑死了为啥“这三个不能用,就把传统dotnet动态路径坑死了”呢动态载入dll或者cs的方法就这几个, IOS 下不能动态载入dll或者cs 文件,已经编译进去的没事.=============================

Unity3D与VS2008结合,加快Unity3D C#开发!

Unity3D中所使用的编程语言有三种:C#,JS和BOO.同时自带了免费的编辑器,然而在windows下,编辑器还是VS最强大,所以本文就探讨如何配合Unity3D使用VS2008. 1.创建一个Unity3D工程,在指定的目录下会生成Asset文件夹. 2.启动VS2008,新建一个Visual C#的类库项目,在“位置”处指定刚才Unity3D所创建的文件夹. 3.在资源管理器中添加到UnityEngine.dll的引用,此文件位于<Unity3d安装目录> /Unity/Editor/

从软件工程的角度写机器学习4——-C4.5决策树的工程实现

C4.5决策树的工程实现 这篇文章开始,将讲述一系列机器学习算法的工程实现方案.出于常用且简单的考虑,选择了C4.5决策树作为第一个算法. 工程框架 鉴于本篇是第一个算法实现,应此需要把整个工程框架介绍一下. 出于最优性能考虑,本框架是为C/C++语言设计的.不过即使用其他语言,也可以按这个框架实现,模块还可以再精简. 本工程定位: 1.无脑版机器学习算法库,使用者基本不需要了解任何算法细节,也不需要了解配置的算法参数含义. 2.可分离的算法库,算法库输出的模型文件可以方便地被其他工程解析使用.