一、安装Git以及注册GitHub账号
1.1 安装git
2、在github创建账号: https://github.com/
准备工作完成后,接下来我们看看上传项目的步骤。
二、本地仓库创建
2.1【创建本地仓库】:
我们需创建一个本地版本库(即本地的一个存放项目的文件夹)
2.2【把本地仓库变成Git可管理的仓库——git init】:
选中项目文件夹右键,选择Git Bash,接着会弹出dom, 此时可以通过命令git init把这个文件夹变成Git可管理的仓库
2.3【把项目文件添加到缓存区——git add】:
把项目粘贴到这个本地Git仓库(GitHubTest文件夹)里面了(粘贴后你可以通过git status来查看你当前的状态)
这里提示你虽然把项目粘贴过来了,但还没有add到Git仓库上,然后我们通过git add .把刚才复制过来的项目全部添加到仓库上。(这一步未截图)
git add .(切记后面一个点),对于已有的项目则理解为将所有修改过的工作文件提交暂存区
2.4【提交项目——git commit】:
用git commit把项目提交到仓库。
三、本地仓库代码上传到GitHub仓库
3.1【Github中SSH加密】:
由于本地Git仓库和Github仓库之间的传输是通过SSH加密的,所以连接时需要设置一下:
(1)本地创建SSH KEY。先看一下你C盘用户目录下有没有.ssh目录,有的话看下里面有没有id_rsa和id_rsa.pub这两个文件,有就跳到下一步,没有就通过下面命令创建(注意:这需要在git bash里面进行)
$ ssh-keygen -t rsa -C "1248397847@qq.com"
一路默认回车,会生成公钥、私钥到以下文件夹下id_rsa是私钥,id_rsa.pub是公钥,打开公钥等下要用到
然后用文本文件打开公钥,
(2)创建GitHub的SSH KEY。
登录Github,找到右上角的图标,打开点进里面的Settings,再选中里面的SSH and GPG KEYS,点击右上角的New SSH key,然后Title里面随便填,再把刚才id_rsa.pub里面的内容复制到Title下面的Key内容框里面,最后点击Add SSH key,这样就完成了SSH Key的加密。
点击NEW ssh key,自己填个标题,下面内容复制前面打开的公钥,最后添加Add SSH key.
3.2、【Github上创建仓库】:
在Github上创建一个Git仓库
3.3【关联本地仓库】:
在Github上创建好Git仓库之后我们就可以和本地仓库进行关联了,根据创建好的Git仓库页面的提示,可以在本地GitHubTest仓库的命令行输入:例:
$ git remote add origin git@github.com:LoveMIssY/yuv_2_rgb.git
# 注意,这里需要在git bash中进入到本地仓库文件夹,后面的连接即需要上传的那个GitHub仓库
# 后面的git@github.com:LoveMIssY/yuv_2_rgb.git 这个是github上仓库的 “clone or download”按钮下的那个,如下图所示:
格外注意事项:在将远程仓库关联本地仓库的时候,很多时候会出现一个错误,即:
fatal: remote origin already exists.
该怎么办呢?只要两步即可:
# 1、先删除
$ git remote rm origin
# 2、再次执行添加就可以了。
$ git remote add origin git@github.com:LoveMIssY/yuv_2_rgb.git
3.4【推送】:
关联好之后我们就可以把本地库的所有内容推送到远程仓库(Github)上了,通过:
$ git push -u origin master
推送时出现的错误:
在推送的时候常常出现错误,即如下错误:
! [rejected] master -> master (fetch first)
error: failed to push some refs to 'git@github.com:LoveMIssY/yuv_2_rgb.git'
hint: Updates were rejected because the remote contains work that you do
hint: not have locally. This is usually caused by another repository pushing
hint: to the same ref. You may want to first integrate the remote changes
hint: (e.g., 'git pull ...') before pushing again.
hint: See the 'Note about fast-forwards' in 'git push --help' for details.
错误原因分析:出现错误的主要原因是github中的README.md文件不在本地代码目录中,导致本地仓库和远程仓库不一致。
怎么解决呢?
解决方案一:在github创建仓库的时候,不要选择添加readme文件,即完全创造一个空的不包含任何文件的仓库,然后直接推送即可;
解决方案二:
# 第一步:通过如下命令进行代码合并【注:pull=fetch+merge]
git pull --rebase origin master
# 执行上面代码后可以看到本地代码库中多了README.md文件
# 第二步: 此时再执行语句
git push -u origin master
即可完成代码上传到github
3.5【完成】:
等上面完成后,可在github中创建那个仓库里看到刚才上传的项目
到这里就完成了Git将本地项目上传到GitHub。
需要特别注意的是:“关联本地仓库”和“推送文件的时候”会出现的错误以及解决办法!