[Unity] Unity3D

查看:608 |回复:0 | 2018-9-19 10:21:07

您需要 登录 才可以下载或查看,没有账号?注册

x
此篇博文主要分享我在工作中使用<span]此博文为本人在蛮牛首发,后复制过来,不涉及侵权。如果因水印问题不便发布,将在后期更换图片,去除水印。
    Git是2005年林纳斯·托瓦兹为了对Linux内核开发进行版本控制而开发的一个分布式版本控制软件。因为他觉得CVS架构不好使,而当时流行的Bitkeeper是一款专有软件,与Linux的开源思想有些差异,林纳斯与BitMove协商无果后,于是用10天时间开发出了第一个版本的Git。
    Git的下载地址为:https://git-scm.com/download/win,根据自己电脑系统选择下载。
    Git安装过程看似繁杂,有很多选项,有点迷,但不用管他们,选择好安装路径,一路Next就可以了。
    大多数Git服务器都使用SSH公钥进行认证。在使用Git前,必须要确认自己的电脑上是否有SSH公钥及密钥,一般来说,其存在于C:\Users\用户名\.ssh\目录下。如果该目录下没有,那我们就需要使用Git来创建SSH密钥/公钥了。
    在电脑桌面右键,选择Git Bash Here,会弹出如下窗口,输入cd ~/.ssh,会提示No such file or directory,说明我们电脑上没有.ssh文件夹。
(2)创建密钥
二、SourceTree
1.SouceTree的安装
    在配置密钥前,SourceTree应该会弹出提示框,需要填用户名和邮箱,这个是在推送的时候,用来显示推送人的信息的,之后可以在工具->选项中进行修改。
1.选择你的仓库
2.为仓库添加SSH公钥
    选择创建项目,填入相应的信息。如果你选择的仓库这里的.gitignore没有Unity选项,那么可以在克隆项目之后个人进行创建。
4.克隆项目
    在项目主页,我们可以选择https或者ssh两种方式对项目进行克隆。Https在每次进行拉取和推送操作时都需要输入仓库的账号和密码,较为麻烦,而SSH则需要确保配置好了SSH公钥,且你必须是项目的拥有者或协同开发人员。
    打开文件夹,会存在以下文件。
5.提交、推送
    然后我们在项目中新建一个TestSript脚本,并保存场景为TestScene,再打开SourceTree,此时界面会发生如下变化。
    红框内的四个文件,即我们刚才创建的脚本和保存的场景以及其对应的.meta文件,下方的是Unity自动生成的ProjectSetting文件夹。而其他的文件夹,如Library,因为我们不需要对其进行版本控制,已经将其添加进.gitignore文件中,所以这里会被自动忽略掉。下面我们对这个界面的主要功能区域进行介绍。
    如图,区域2是未暂存文件,我们每次对项目进行的修改都会显示在这里,如果我们选择任意一项,区域3则会显示出该修改的内容。区域1是暂存区,确认文件的修改之后,我们要将修改的文件拖入暂存区中,类似于一步确认操作,如果我们不想暂存,可以再将文件从暂存区拖入未暂存区中。
6.获取、拉取
    更改完README.md文件之后,我们在SourceTree中点击获取,会显示出仓库中对比本地的文件的更改,同时拉取按钮与master分支会显示有一个待拉取。点击拉取按钮即可将该文件更新到本地。
7.冲突、解决冲突
    我们分别对仓库和本地的README文件进行如下更改,并提交,网页端的提交是直接推送到仓库的。
    点击获取,界面会变成如下所示(马赛克部分是我测试冲突用的,目前没有多人协同工作,为了确保演示是正确的,我预先模拟了几遍,请忽略掉,嘿嘿)此时显示的是一个本地的待提交,和一个仓库的待拉取。
    点击拉取按钮,这时候会弹出如下提示框。(这里我们不先推送,而是先拉取,是为了确保仓库的版本不会出错,要将冲突放在本地解决,以免出现未知的问题
    点击关闭,会显示出来冲突的文件,如下所示
    如果想简单粗暴一些,那么右键点击冲突文件,然后选择“使用他人版本解决冲突”或者“使用我的版本解决冲突”,如字面意思所示,如果选择其中一个,那么另一个人的修改将被丢弃,在进行此操作时需要与他人协商好。解决冲突之后,我们需要将解决冲突后的文件重新提交,然后再进行推送。
    在多人协作开发中,一般是将仓库的文件拉去下来,然后新建分支进行开发,待开发无误之后,再提交Merge Request,由项目的管理者进行分支的合并,以确保项目的安全性。这里因为没有多个成员,所以将不再进行演示。
    在使用Source Tree的过程中,可能会有各种各样的错误提示,这种情况不要慌张,先看清楚提示框提示的错误信息,然后再根据错误的信息去解决问题,一般情况下,大多数的错误都是操作不当造成,根据错误信息都可以很快速的解决。
五、微元素更新-Git]    对于工程中的视频、高面数模型、音频、高分辨率图片等资源,往往占用极大部分的空间,造成仓库空间的浪费,为此,Git推出Git LFS(Large File Storage)即大文件存储,以单独存储类似以上的大文件。
1.要求
<span]    Git版本:1.8.5及以上
]2.SourceTree中初始化LFS仓库
   以上便是我在工作中使用Git+SourceTree的一些经验,如有疑问,请在评论区留言,如有不足,欢迎指正

230935ba1b0146b895.png

评分

参与人数 1活跃度 +16 展开 理由
小小橘子 + 16 【给力】阅贴无数,楼主最强!

查看全部评分

2018-9-19 10:21:07  
 赞 赞 0

使用道具 登录

0个回答,把该问题分享到群,邀请大神一起回答。

CG 游戏行业专业问题

Unity3D技术手机游戏引擎手游引擎
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表