Git作为代码协作工具已帮助了成千上万的开发者,但对于游戏开发来说还是稍有不便。最近GitHub官方推出了GitHub for Unity扩展工具,该工具对程序员及设计师均适用,Unity游戏开发者可以更好地将Git与GitHub集成到开发工作流中,对大型二进制资源文件也十分管用。本文我们就一起来了解一下如何在Unity编辑器中使用Github管理项目。

有关GitHub for Unity扩展工具
GitHub for Unity扩展工具将Git与GitHub直接集成到Unity编辑器中。开发者可以很方便地在专门的界面上进行项目配置、团队协作并管理Git项目。该扩展工具包含了Git LFS v2.0的新功能,支持存储大型二进制资源文件,并且支持对文件加锁,以免在操作一些较难合并的文件时发生冲突。 
 


GitHub for Unity扩展工具还只是统一GitHub与Unity工作流的第一步,该工具现已开源发布至GitHub。

温馨提示:目前该工具仅处于测试阶段,在使用之前,请您备份已有项目。

使用方法
下面为大家介绍GitHub for Unity扩展工具有关使用和操作方法,希望您读后可以立即上手使用。

初始化Git仓库
使用该工具非常简单,下载资源包并导入Unity工程,依次点击菜单项Windows - GitHub打开GitHub窗口。如果当前Unity项目不属于任何Git仓库,可以点击下方的Initialize repository按钮让插件来初始化仓库:

 


授权
在Unity编辑器中依次点击Window -> GitHub -> Account -> Sign in登录GitHub账号,登录后可以进行项目提交或同步等操作。GitHub登录信息会被保留到系统,可用于系统的所有Git操作。
 


上传新仓库
从Unity编辑器中将本地项目上传至GitHub作为新仓库的步骤如下:
•   在github.com中新建一个空的仓库,创建过程中不要添加License、Readme等任何文件
•   复制创建仓库页面的Https链接
•   在Unity编辑器中依次点击Windows -> GitHub -> Settings打开设置界面,将链接复制到Remote文本框
•   点击Save repository
•   在History标签下点击Push

提交到仓库
可以在Changes标签页下看到所有新增或更改的文件并提交这些文件至仓库。后缀名为.meta的文件会与对应文件目录一致显示在面板中,也可以选择将某个文件与其对应的.meta文件一起提交至仓库。
 


更新项目与推送请求
History标签页的Push按钮用于将本地内容推送至服务器,在进行此操作前需要确保已在设置界面中指定了Remote的链接。

Pull按钮用于从服务器上更新项目文件,如果本地文件有改变,请先提交本地文件之后再从服务器上更新项目。
 


Branches标签页
该标签页下显示所有本地的Unity项目分支以及远程服务器上的项目分支。
 


设置标签页
可以在设置标签页下配置用户信息,以及Git仓库的地址。另外,该页面还会显示所有Unity项目中被锁定的文件,以及锁定操作的责任人。另外请记得,在提交文件至服务器之后为文件解锁。
 


安装Git 
Windows平台:GitHub for Unity插件会自带git与git-lfs安装包,来确保使用正确的Git版本。这些文件会在首次运行插件时被安装到%LOCALAPPDATA%\GitHubUnityDebug目录下。也可以通过GitHub -> Command line菜单项打开控制面板来使用这些命令。

在首次初始化Git仓库之前,请确保在%HOME%\.gitconfig文件下已配置了git用户名与密码。也可以打开%HOME%\.gitconfig文件文件手动进行添加:
 

[user]
            name = Your Name
            email = Your Email


Windows平台的日志文件目录为%LOCALAPPDATA%\GitHubUnityDebug\github-unity.log。

Mac OS平台:需要手动安装最新的git与git-lfs工具,可以在Unity编辑器中GitHub的Settings标签页下配置git工具的目录。同样要在初始化仓库前,确保配置git用户名与密码。配置文件名为~/.gitconfig,也可手动编辑。

Mac OS平台的日志文件目录为~/.local/share/GitHubUnityDebug/github-unity.log。

总结
GitHub for Unity可以作为Unity编辑器原生版本控制工具,与Unity编辑器高度集成,轻松玩转Unity项目的版本管理与控制。现在就来抢先体验GitHub for Unity吧!