Git -- 01 -- Git上传项目到GitHub
虽说 GitHub 已经注册了好久了,但平时也仅限于查找开源项目或其他拥有资源,至于如何在 GitHub 上托管自己的代码却不怎么熟悉,因此上网搜索了相关资源并结合自身操作后,总结如下
一、安装 Git
首先上官网,下载相应系统版本的 Git,这里我下载的是 Windows 版本
具体的安装步骤这里就不说了
二、创建 SSH KEY
通常情况下,我们通过 SSH 方式来进行 Git 仓库和 GitHub 仓库之间的传输通信,因此我们需要先生成 SSH KEY
$ ssh-****** -t rsa -C "[email protected]"
执行完命令后,会在用户目录下生成一个 .ssh 文件夹,共有以下几个文件
其中 id_rsa 为私钥,id_rsa.pub 为公钥,与 GitHub 连接时我们会需要用到公钥
三、GitHub 上添加 SSH KEY
此时我们登陆 GitHub 进行 SSH KEY 配置,步骤如下
setting —> SSH and GPG keys —> New SSH key
title 可以随便填写,key 填写 id_rsa.pub 公钥中的内容,最后点击 Add SSH key 完成创建
四、创建本地 Git 仓库
首先我创建了一个名为 hello 的文件夹,然后在文件夹里又创建了一个 HelloWorld.java 的文件,我们进入 hello 文件夹中,右击打开 Git Bash 命令行窗口,通过 git init
命令将该文件夹变为一个 Git 可管理的仓库 (此时会在 hello 文件夹中生成一个隐藏的 .git 文件)
五、将文件添加进版本控制并提交
此时,我们先通过 git status
来查看当前文件状态
接着通过 git add .
将文件添加进版本控制 (. 表示当前所有目录和文件)
然后通过 git commit -m 'first commit'
来提交文件 (-m 后面带的是本次提交的注释内同)
要注意的是,这里只是将文件提交到了 Git 的本地仓库,并没有上传到 GitHub 上
六、在 GitHub 上创建项目
我们在 GitHub 上创建一个同名为 hello 的项目
复制 SSH 地址,通过 git remote add origin [email protected]:Goodbye-Youth/hello.git
与本地 Git 仓库进行远程连接 (需要替换成你自己的 SSH 地址),此外我们还可以通过 git remote -v
来查看当前所有的远程仓库
七、上传代码到 GitHub
最后我们通过 git push origin master
将本地代码 push 到 GitHub 仓库中,此时我们再去刷新之前在 GitHub 上创建的项目就会发现代码上传成功了
八、异常处理
如果我们在第六步的过程中,勾选了自动生成 README 文件,则第七步直接 push 代码的话会报错
这是因为 GitHub 仓库上的 README 文件在本地 Git 仓库上并不存在,因此我们需要先通过 git pull origin master
将主干 pull 下来合并后再提交
不过直接使用 git pull origin master
指令,会报如上异常,这是因为本地 Git 仓库和 GitHub 仓库没有一个共同的 commit,Git 为了防止上传错误,所以会报该异常,如果我们确认无误就可以使用 --allow-unrelated-histories
参数来告诉 Git 已确认,对两个仓库进行合并
合并完成之后,我们再使用 git push origin master
就可以 push 成功了