将本地Unity项目上传到GitHub
标题:如何将本地Unity项目上传到GitHub教程
问题背景:
说来惭愧,玩程序这么多年,一直在领导们手下开发,自己有什么需要记录的都在本地或者博客园随手记记,有什么需要测试或者自己研究的东西,也都在本地,创建一个属于自己github仓库,从来没有过,以前试过,脑子里很乱,最近想整理下脑子里凌乱的shader知识,这玩意不敲单靠记忆是指定不行的,以前在本地,这写点那写点,最后都找不到了,以至于现在脑子里都不系统,我觉得是时候整一个自己的学习仓库了,自己从未作为一个创建者没从头到尾做一遍步骤,所以还是记录下吧。
本文参考文献链接:https://blog.csdn.net/generallizhong/article/details/94014779
感谢该作者的指引。我在这主要是自己再温习一遍,增强记忆。
具体步骤:
1.本地有一个创建好的Unity工程MyProject,这时我新建了个空文件夹(由于不清晰流程避免不整乱我的工程)ShaderProject
空文件夹:
目标文件夹:
2. (git的安装以及GitHub的注册这里就不说了)右击新建文件夹ShaderProject,Git Bash Here打开窗口
<1>.【把本地文件夹变成Git可管理的仓库】命令一: $ git init
注:这时ShaderProject中有了个.git文件夹,这是Git用来跟踪和管理版本库的,由于它默认是隐藏文件,如果没有就设置下文件夹和搜索选项。
<2.>.【把项目文件添加到缓存区】命令二:$ git status,命令三:$ git add . 注意add后面有个空格和“.”,一定别写错,对于已有的项目则理解为将所有修改过的工作文件提交暂存区
把你需要上传到GitHub的文件( MyProject 文件夹)全部复制到这ShaderProject这个目录下。然后使用该命令:
这可以用该命令看看状态,这里仅说明项目粘贴过来了,但是到这还没有add到Git仓库上,然后我们通过git add .把刚才复制过来的项目全部添加到仓库上。
<3>.【提交项目】:把项目提交到仓库,命令四:$ git commit -m '',在使用命令git commit -m "这里面写你的注释" 把文件提交的本地仓库
3.接下来就是连接远程仓库(也就是连接Github)
<1>.由于本地Git仓库和Github仓库之间的传输是通过SSH加密的,所以连接时需要设置一下:创建SSH KEY。先看一下你C盘用户目录下有没有.ssh目录,
有的话看下里面有没有id_rsa和id_rsa.pub这两个文件,有就跳到下一步,没有就通过下面命令创建,命令五:$ ssh-keygen -t rsa -C "************@163.com"
然后一路回车。这时你就会在用户下的.ssh目录里找到id_rsa和id_rsa.pub这两个文件 :
<2>.登录Github,找到右上角的图标,打开点进里面的Settings,再选中里面的SSH and GPG KEYS,点击右上角的New SSH key,然后Title里面随便填,再把刚才id_rsa.pub里面的内容复制到Title下面的Key内容框里面,最后点击Add SSH key,这样就完成了SSH Key的加密。具体步骤也可看下面:
上面key默认在C:\Users\Administrator\.ssh下的id_rsa.pub文件中,把这个文件中的内容全部复制到上面的key里面就可以了。如下图:
<3>.在Github上创建一个Git仓库。
你可以直接点New repository来创建,如下:
选不选Add a README file的区别在于创建后的工程中是有这么个文件
<4>.在Github上创建好Git仓库之后我们就可以和本地仓库进行关联了,根据创建好的Git仓库页面的提示,可以在本地ShaderProject仓库的命令行输入:命令六: $ git push -u origin master
a. 由于新建的远程仓库是空的,所以要加上-u这个参数。然后进去GitHub ,ShaderProjects这个仓库刷新下就会有已经上传的文件夹了。
b.如果新建的远程仓库不为空,例如有个README文件,输入这句命令就报错了,这是用命令七:$ git pull --rebase origin master先拉取README即本地不存在的文件到本地仓库,再用命令八:$ git push origin master 合并
注:如果已经出错了:
a.先删除远程 Git 仓库,使用命令九:$ git remote rm origin
b.再添加远程 Git 仓库,使用命令十:$ git remote add origin git@github.com:********/ShaderProject.git
如下:
当本地有了pull的文件后再使用命令$ git push origin master上传就ok了,如图:
补充: 如果要克隆分支,就使用命令git clone -b ,如:
$ git clone -b master git@github.com:******/****Project.git