经过我们小组的调查和讨论,决定在项目的开发过程使用PlasticSCM项目版本控制系统进行协同开发。
创建PlasticSCM项目分为 新建PlasticSCM项目 和 托管现有项目到PlasticSCM两种。
PlasticSCM是一款性能卓越的版本控制工具,在业界和Unity生态中也一直深得项目管理者与开发者们的信赖,原因非常多,主要有二:
其对巨大项目存储(高达4TB级)以及成千上万个分支频繁创建与合并处理能力,给业界采用其他形式者(Git/SVN/P4等)以强烈的效果震撼。
其注重可视化与易用性的任务型分支,差异查询,分支拆分与合并……是包括Unity开发者在内的广大追求人性化操作的开发人员们的不二之选;
现在中国Unity进一步对整体工作流程进行系统梳理与集中式打通(包括项目管理、团队协作、版本控制、服务器配置、以及工具集成与优化)。
Unity PlasticSCM对开发者与团队的工作效率所带来的提高是巨大的,可从以下主要利益点角度进行衡量:
Part 2. 操作指南
在过往的工作流程中,部分开发者在Unity之外使用比如Git(正常访问情况)以及其他简易协作功能来分别进行项目管理与开发,工作流容易出现隔断,存在着版本控制管理与开发之间不容易同步的情况。
一键启用
而在中国Unity 对工作流程进行无缝衔接之后,UnityHub,UnityID,UnityEditor-PlasticSCM Package,Unity Editor,分支管理器将彻底打通,各司其职,以求给开发者在实际工作中带来无感知的 All in 1流畅体验。只需要在Unity Hub中一键启用,这对技术使用门槛的大幅度降低是显而易见的。
Plastic SCM的下载和unity的下载一样简单,也是到unity官网找到相应的页面下载即可。
随后登录Unity Hub将看到PlasticSCM已经整合到了项目管理列表中。
启用PlasticSCM
在新建项目的时候勾选启用PlasticSCM;
配置PlasticSCM
Plastic SCM配置过程同样非常容易:
启用Plastic SCM时,Unity Hub将自动为您显示您自己创建过的Unity组织(Organization)以及您加入的其他Unity组织,它们将作为您的项目仓库所在的空间。
Unity Hub将请您选择您所在的任意一个Unity 组织(包括自己创建的,以及作为成员加入的)作为您的PlasticSCM默认组织。
选定PlasticSCM默认组织,并对项目点击确认后,Unity Hub将自动将您的项目同步到您的PlasticSCM空间。
关于如何创建组织以及管理组织内协作的成员,请参考以下 #2.1 小节内容。
完成新建PlasticSCM项目
系统将自动启动Unity引擎打开项目,自动创建远程仓库,并自动完成第一次的Checkin(Commit)。
您将看到远程仓库以及分支已经自动在项目中完成创建。
同时您也将看到PlasticSCM窗口已经自动将项目资源作为Pending changes Items(待提交内容)。
自动创建一个新的Branch
这里需要注意Main分支与Branch分支的区别!创建PlasticSCM项目的同时,我们将为您的项目创建远程仓库,并在Main主线分支之外,自动创建一个新的Branch分支,作为您正在工作的分支,其目的是为了避免Main分支被作为直接修改和工作的位置。
完成创建
同时可以在Unity Hub的项目列表中看到刚才新建的项目,已经标识为已创建于远程仓库
托管现有项目到PlasticSCM
登录Unity Hub
您可以从项目列表中看到,所有项目右侧的更多操作里包含了“托管到PlasticSCM”选项。
为现有项目选择启用PlasticSCM
为现有项目选择托管到某个组织中
完成现有项目托管
这里需要注意Main分支与Branch分支的区别!托管现有项目到PlasticSCM与新建PlasticSCM项目相同,我们将在您项目的远程仓库Main主线分支之外,自动创建一个新的Branch分支,作为您的工作分支,其目的是为了避免Main分支被作为直接修改和工作的位置。
其次还需要注意项目是否已经被推到仓库中!
选择托管但尚未点击打开过的项目,由于并没有完成第一次Checkin,因此组织内团队成员这时候暂时还看不到您托管的项目。
选择托管的项目只有当项目被打开之后(启动Unity引擎打开项目),系统才会自动完成第一次的Checkin(Commit)。
您将看到远程仓库以及分支已经自动在项目中完成创建。
完成托管(Hub视图)
您同时可以在Unity Hub的项目列表中看到刚才托管的项目,已经标识为已托管于远程仓库
如何与团队一起协作?
当需要参与组织创建的新项目,我们首先需要把项目克隆到本地工作区才能开始工作。 在克隆所在组织的项目之前,首先得确保团队组织的创建者已经将你加入组织中
加入Organization 组织
相当于同一个公司或项目小组,作为团队进行协作,共享项目的组织单元。
用户可通过https://id.unity.cn/organizations进行设置,自行创建组织并邀请其他成员加入进行项目协作,也可以被加入到他人所创建的组织中。
组织的普通用户身份(User)只有克隆项目的权限,而组织的所有者(Owner)或管理员(Manager)则拥有新建PlasticSCM项目的权限,你甚至可以在Unity组织内对成员进行分组(Group),以达到更灵活的团队协作。
在Hub中选择克隆项目
首先打开Unity Hub项目列表,选择PlasticSCM 标签,查看远程仓库中的项目
进行克隆
点击云按钮,从远程仓库的项目Branch分支,克隆项目到本地工作区(Workspace)路径
查看并打开已克隆项目
这时候会发现该项目已经被克隆到项目列表中
注意事项
目标项目的克隆位置来自您在远程仓库中的Branch分支
只有当您尚未创建Branch的时候,系统会从Main创建Branch并克隆到本地
克隆一般只用于首次参与项目时创建本地工作区(Workspace)用
如果需要同步该项目中包括其他成员修改的最新进度,则不应该进行克隆,因为这样会在此重复克隆项目中自己已有的Branch分支。正确的做法是在Editor中点开PlasticSCM客户端,将Main分支Pull(拉取)到自己的Branch分支上(详细请参考 “如何Pull” 步骤)
对Main分支进行合并操作的权限可以打开PlasticSCM客户端进行配置
当团队成员完成修改时,您可以通过Pull(拉取)已合并到Main分支上的所有修改(这个步骤我们称为 Pull From Main)
选择Main主线分支
选择要把Main合并我的Branch
在Main主线分支上点击右键,选择“Merge from this changeset…”
Checkin
输入Comment,点击Checkin
Update
回到Editor中可以看到有可更新的修改
查看并对比所修改的内容
通过可视化界面轻松查看对比
确认并更新
点击Update到您的Workspace(工作区)
提交一个Checkin(Commit)
当项目准备提交的时候,保存所做的修改,它们会出现在Checkin item窗口中,在Pending changes 窗口添加一个描述,勾选提交的Items,点击Checkin changes 完成第一次的Checkin
Auto Save(自动 Checkin)
与此同时,我们也提供了自动Checkin的选项,如果勾选之后,每5分钟将自动保存一次,你也可以通过preference关闭这个默认选项
查看您的提交
提交后您将可以在Changesets中可以看到您的提交历史,同时修改也体现在你的分支上
确认本地修改工作
当我们在分支上做了其他更多的工作后,我们希望把这些新的工作成果合并回主线中
选择要合并到Main的Branch
这个时候我们在Branch分支上点击右键,选择“Merge from this changeset to…”
选择合并位置
这时候选择合并回主线的节点
检查提交合并内容
对比并确认正常的文件的差异,点击Apply Changes
Checkin
输入Comment,点击Checkin
完成从Branch分支到Main主线的合并
分支管理与版本历史的管理正是Unity PlasticSCM独一无二的优势所在,结合可视化界面将让您得心应手。
点开PlasticSCM分支视图
确认提交的修改
点击右键,从本次的修改创建一个分支
查看分支
这个时候可以看到我们的Workspace位于分支上了,意味着我们接下来回到Unity中所做的工作将存放在我们常见的分支上