多人协作

说到多人协作开发,大家都会想到要使用版本控制工具来管理项目,当然最常用的要数SVN和Git了,但是SVN管理Unity3D项目的确有一些不尽人意的地方。

比如:两个人修改了同一个场景,SVN更新时就不能合并,还有在Unity Editor 中SVN不可视化,不友好!

我们团队初期也是使用SVN进行提交和更新。记录一下我们一路走来的历程……

写作环境

本文写作环境在Unity 4.2及以下版本

==内容更新==

本段内容更新于:2016-07-02

新版Unity的场景合并

对于Unity4.3及以上版本,场景可以很方便合并啦!

开启方法:

EditorProject SettingEditor Settings 中把 Asset Serialization改为Force Text

这样就可以对不同版本的场景进行文本比较啦。

过程记录

下面记录一下我们团队使用版本管理工具的过程

SVN

SVN版本管理工具,对于大容量的美术资源管理并不是那么友好。

UVsersionControl

UVsersionControl,集成在Unity3D界面中,方便直观地使用SVN的功能,比如:update,commit,delete

此插件可以Asset Store上免费获得哦!

Asset store地址:https://www.assetstore.unity3d.com/#/content/3350

Unity论坛地址:http://forum.unity3d.com/threads/135247-UVersionControl

而且还是开源免费的哦,强烈支持作者!

Note

需要安装SVN的命令行版本才能使用此插件,注意:此命令行版本要和你已安装的Tortoise SVN客户端版本一致!作者推荐1.7版本的SVN.

下载地址:Windows Subversion 命令行 客户端(SVN),历史版本下载:http://www.sliksvn.com/pub/

与Unity集成

仓库管理

使用此插件也能比较方便地管理项目

Asset Server

我觉得最好的版本管理工具 要数Unity官方的Asset Server了。

下地地址:http://unity3d.com/unity/collaboration

Note

当两个文件发生冲突时,当你安装了TortoiseSVN之后就可以使用compare、合并工具比较两个文件的异同。

两个人修改同一场景,完全无压力终于摆脱了不能同时编辑同一个场景的困扰!

疑问

1.如何控制文件夹访问权限?

答:可以通过历史记录及自带的回收站功能来管理项目

常见错误

1、有时候如果代码报错,另一人的GameObject设置不会相应载入,提示你需要先解决代码错误,大部分情况下都是编码问题,就是代码中有中文注释。需要把文件另存为UTF-8

2、需要先Update才能Commit

3、当有冲突时需要合并代码文件 Merge

功能预览

Asset Server资料

asset server u3d项目管理

Unity指南:Asset Server (Team License Only) Setting up the Asset Server

Mac OS 代码合并工具

  1. SourceGear Diff/Merge.
  2. FileMerge: part of Apple's XCode development tools.
  3. TkDiff.
  4. Perforce Merge (p4merge): part of Perforce's visual client suite (P4V).

文档资料

Asset Store 版本管理:https://www.assetstore.unity3d.com/en/#!/search/page=1/sortby=popularity/query=category:158

Unity3D多人协作开发环境搭建的更多相关文章

  1. Unity3D 多人协作开发 环境搭建 笔记(场景合并)

    http://www.cnblogs.com/zhaoqingqing/p/3371120.html 说到多人协作开发,大家都会想到要使用版本控制工具来管理项目,当然最常用的要数SVN和Git了,但是 ...

  2. (转载)JAVA敏捷开发环境搭建

    整个软件项目分为四个环境 开发本地环境.开发环境.测试环境.IDC环境.和传统C++开发不一样的模式是多了第一个开发本地环境.这是为什么呢,因为目前大部分开发人员还是比较熟悉windows下开发.对于 ...

  3. [ZigBee] 2、 ZigBee开发环境搭建

    本节介绍ZigBee基本开发环境搭建,附件中有本节介绍的软件下载地址~ 链接:http://pan.baidu.com/s/1bLdqxg 1.IAR Embedded Workbench 的安装 S ...

  4. android开发环境搭建日记和嵌入式Android开发环境初探

    非常感谢博客园的各位,按照你们的博文,还有利用百度和谷歌逐渐建立了android的开发环境,只是给自己备份参考查看,看过的人可以忽略这篇文章. 本文章大部分参考了:http://www.cnblogs ...

  5. 五步搞定Android开发环境部署——非常详细的Android开发环境搭建教程

      在windows安装Android的开发环境不简单也说不上算复杂,本文写给第一次想在自己Windows上建立Android开发环境投入Android浪潮的朋友们,为了确保大家能顺利完成开发环境的搭 ...

  6. JavaEE开发环境搭建(1)---(jdk的安装)

    ----------我是前言---------- 有时候从网上找资料真的是一件很开(dan)心(teng)的事情, 因为很多你想要了解的东西总是很巧妙的被略去了... 或者... 根本没有... 真是 ...

  7. Scala深入浅出实战经典---001-Scala开发环境搭建和HelloWorld解析

    001-Scala开发环境搭建和HelloWorld解析 Scala 函数式编程和面向对象结合的语言 函数式编程擅长数值计算 面向对象擅长大型工程和项目的组织以及团队的分工协作 Scala会是下一个伟 ...

  8. Android开发环境搭建相关文章列表(转载)

    Android开发虽然有所了解,但是一直没有搭建开发环境去学习,Android的更新速度比较快了,Android1.0是2008年发布的,截止到目前为止Android已经更新Android5.0.1, ...

  9. nginx 与 lua 开发环境搭建

    首先下载最新版的 相关软件 的安装文件. nginx: http://nginx.org/en/download.html LuaJIT: http://luajit.org/download.htm ...

随机推荐

  1. (九)play之yabe项目【发表博文】

    (九)play之yabe项目[发表博文] 博客分类: 框架@play framework   发表一篇博文 填充管理页面 从主页链接到管理页面时,只简单显示了登陆用户的名称 现在对显示的内容加以丰富 ...

  2. 通过原生js添加div和css

    function createStyle(){ return"*{padding:0;margin:0;border:0}.loading{width:640px;height:1024px ...

  3. python基础(2)

    1.lambda函数 学习条件运算时,对于简单的 if else 语句,可以使用三元运算来表示,函数同样有简单的表示方法 # ###################### 普通函数 ######### ...

  4. SAP 锁机制

    SAP锁机制一.SAP为什么要设置锁:   1,保持数据的一致性     如果几个用户要访问同样的资源,需要找到一种同步访问的方法去保持数据的一致性.比如说,在航班预订系 统中,需要检查还有没有空座位 ...

  5. SharePoint 2013: Search Architecture in SPC202

    http://social.technet.microsoft.com/wiki/contents/articles/15989.sharepoint-2013-search-architecture ...

  6. bash shell命令(2)

    在上篇<bash shell命令(1)>中,介绍了几种简单的linux shell命令,今天继续介绍bash shell命令 本文地址:http://www.cnblogs.com/arc ...

  7. Quartz 2d绘图

    今天看了一下Quartz 2D绘图,我只想说:不要把绘图和动画那些东西当做一个很复杂的东西,其实只要你认真看还是可以理解的.他们并不难.啰嗦了几句,现在直接进入正题: 前提是我们必须新建一个singl ...

  8. CSS(一)

    开始学习css之旅:先照样式做一个 一.使用DIV设置 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN&qu ...

  9. Java 参数传递都是值传递

    Java 参数传递都是值传递,验证代码如下 public class ParamTransferTest { public static void swap(int a, int b) { int t ...

  10. SAP SD业务的简图