闲聊:瞎谈团队协作与git服务器搭建
某天,突然有人问我:
你想做游戏吗?
想啊,当然想。从高考完选专业开始就想了。
于是,我就稀里糊涂进了这样一个小团队。当然,过程还是挺复杂的,暂且略过不表,以后有机会再谈。
大家都是本科生,什么经验都没有,凭着一腔热血就开始了。起初什么都不会(虽然现在也什么都不会),从Unity的官方教程开始学起,最多只是接触过面向对象语言的我们开始啃文档、写C#脚本,也是硬生生让我们做出来半个demo。
我们用着最笨的方法来团队协作:每个人将做好的功能打包成素材包(.unitypackage),交给一个人来整合。这样做无疑是低效率的,经常出现一人累死,五人围观的情况;另外出了bug也不好定位。
有没有办法,能够高效协作?
首先我想到的是GitHub。有没有像Visual Studio GitHub Extension那样的插件?
答案是有的。GitHub上面就有GitHub for Unity的开源项目,然而第一次搜到这个项目的我根本没有仔细看,没找到下载链接!导致我以为这个项目还没完成......
然后便想到的是使用云网盘。想法是将整个项目直接上传到百度网盘,然后由每个人要修改的人下载-修改-重新上传。当时想着只需要对比修改的文件就行,没曾想百度网盘对于同名且哈希值不同的文件的做法是同是保留两个文件...没法直接替换(或许有直接替换的方式)。
无奈的我又去寻找能够实现团队协作的方式。我无聊中又去查看GitHub for Unity项目,这次一字不差地看完了,没有漏掉下载......
项目开不开源暂时考虑不到(毕竟商业价值现在还没有),兴冲冲的我安装上GitHub for Unity拓展,兴冲冲上传了测试项目,兴冲冲地告诉同伴——
然后得知GitHub限制项目大小在1G以下。
现在都700多M了好么(当时并不知道只需要向git库存储Assets和ProjectSettings两个文件夹就行)!
不过这一番操作也让我了解到了git。既然用不了别人的git库,为啥不自己搭一个?
能这么想的原因,主要是因为我找到了这个:
世上最(hou)浅(zi)显(ye)易(neng)懂(dong)的Git教程!
https://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000
作者是廖雪峰廖老师。
凭借手边的VPS,一路磕磕绊绊终于算是把git库搭起来了。为了方便小伙伴使用,同是还找到了可视化Git界面:SourceTree。
(图为给小伙伴讲解工作流程使用的库)
借用廖老师的最后一句话:
如果你学了Git后,工作效率大增,有更多的空闲时间健身看电影,那我的教学目标就达到了。
希望大家能够学习一番git的使用,毕竟没有几个人是单打独斗的。甚至工作后也有很大几率接触git,就算是为工作打基础,也应该使用git嘛。
大概只写这么多,后续我们使用git库的一些问题也会在后续的文章里写出来。
共勉。