第二:Git如何将本地项目(工作区-暂存区-本地仓库)上传到Github(远程仓库)

一.第一种方法:(自测可以实现)

1.首先需要github账号:https://github.com/

2.安装Git工具,下载后(傻瓜式安装)直接安装即可:https://git-for-windows.github.io/

3.登陆后,进入Github首页,点击新建项目

在这里插入图片描述

4.填写相应信息后点击create repository即可 
Repository name: 仓库名称(输入名字,最好不要使用中文)

Description(可选): 仓库描述介绍

Public, Private : 仓库权限(公开共享,私有或指定合作者)

Initialize this repository with a README: 添加个README.md

gitignore: 不需要进行版本管理的仓库类型,对应生成文件.gitignore

license: 证书类型,对应生成文件LICENSE

在这里插入图片描述

5.创建成功以后,copy这个地址备用

在这里插入图片描述

6.本地操作

6.1.首先右键项目,如果之前安装Git成功的话,右键会出现两个新选项

6.1.分别为Git Gui HereGit Bash Here,这里选择Git Bash Here

6.2.进入项目Test_Bluetooth即为项目名

在这里插入图片描述

7.接下来输入代码(关键步骤),把github上面的仓库克隆到本地

git clone https://github.com/CKTim/BlueTooth.git

在这里插入图片描述

8.步骤后在本地项目文件夹下面就会多出个文件夹,该文件夹名即为github上面的项目名

8.1.图中多出Test文件夹,把本地项目文件夹下的所有文件(除新多出的那个文件夹不用)

8.2.其余都复制到那个新多出的文件夹下

在这里插入图片描述

9.接着继续输入命令 cd Test,进入Test文件夹

在这里插入图片描述

10.接下来依次输入代码即可完成其他剩余操作
git add .(别忘记后面的.,此操作是把Test文件夹下面的文件都添加进来)

git commit  -m  "提交信息"(“提交信息”里面换成需要,如“first commit”)

git push -u origin master (此操作目的是把本地仓库push到github上面,此步骤需要输入帐号和密码)

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

二.第二种方法:(自测可以实现)

1.第一步:需要先创建本地的版本库(其实也就是文件夹)

1.1.可以直接右击新建文件夹,也可以右击打开Git bash命令行窗口通过命令来创建

1.2.通过命令行在桌面新建个TEST文件夹(也可以在其他任何地方创建文件夹),并且进入这个文件夹

在这里插入图片描述
在这里插入图片描述

2.第二步:通过命令git init把这个文件夹变成Git可管理的本地仓库  

在这里插入图片描述

2.1.这时会发现TEST里面多个.git文件夹,它是Git用来跟踪和管理版本地仓库的

2.1.1.如果看不到是因为它默认是隐藏文件,那就需要设置让隐藏文件可见

在这里插入图片描述

3.第三步:这时候就可以把项目粘贴到这个本地Git仓库里面(粘贴后可以通过git status来查看当前的状态)

3.1.然后通过git add xxx 把项目添加到本地暂存区(仓库)
3.1.1.(或git add .把该目录下的所有文件添加到仓库,注意点是用空格隔开的)

3.1.2.在这过程中其实可以一直使用git status来查看当前的状态

在这里插入图片描述

3.2.这里提示虽然把项目粘贴过来,但还没有add到Git仓库上

3.2.1.然后通过git add . 把刚才复制过来的项目全部添加到暂存区(仓库)

在这里插入图片描述
在这里插入图片描述

4.第四步:用git commit -m "项目名称",项目提交到本地仓库

4.1.-m后面引号里面是本次提交的注释内容,这个可以不写,但最好写上,不然会报错

4.1.1.本地Git仓库这边的工作做完,下面就到连接远程仓库(连接Github

在这里插入图片描述

4.2.由于本地Git仓库和远程Github仓库之间的传输是通过SSH加密的,所以连接时需要设置
5.第五步:创建SSH KEY
5.1.先看C盘用户目录有没有.ssh目录,看有没有id_rsa和id_rsa.pub这两个文件

5.2.如果有就跳到下一步,如果没有就通过下面命令创建
5.2.1.输入下边的命令
$ ssh-keygen -t rsa -C "youremail@example.com" 注意ssh-keygen之间没有空格
5.2.2.然后回车,询问保存key的位置,默认是在括号里的路径下,可以修改,也可以不做修改

在这里插入图片描述

5.3.这里不修改,回车,提示已存在,是否覆盖。因为这是第二次操作

在这里插入图片描述

5.4.输入Y,回车,提示输入密码

在这里插入图片描述

5.5.还是不要设置密码,因为容易忘记,不输入密码,回车

在这里插入图片描述

5.6.确认密码不输入,回车

5.7.出现图中结果,表明创建key成功

在这里插入图片描述

5.8.这时就会在用户下的.ssh目录里找到id_rsa和id_rsa.pub这两个文件  

在这里插入图片描述

6.第六步:登录Github找到右上角的图标,打开点进里面的Settings

6.1.选中里面的SSH and GPG KEYS,点击右上角的New SSH key,然后Title里面随便填

6.1.1.再把刚才id_rsa.pub里面的内容复制到Title下面的Key内容框里面

6.1.2.最后点击Add SSH key,这样就完成SSH Key的加密

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

7.第七步:在Github上创建Git仓库,直接点New repository来创建

7.1.比如创建TEST2的仓库(因为面已经有test的仓库,所以不能再创建TEST仓库)

在这里插入图片描述

8.第八步:在Github上创建好Git仓库后,就可以和本地仓库进行关联

8.1.根据创建好的Git仓库页面的提示,可以在本地TEST仓库的命令行输入
$ git remote add origin https://github.com/guyibang/TEST2.git
8.1.1.注意origin后面加的是Github上创建好的仓库的地址   

在这里插入图片描述

9.第九步:关联好后就可以把本地库的所有内容推送到远程仓库(Github)上

9.1.通过命令:$ git push -u origin master
9.1.由于新建的远程仓库是空的,所以要加上-u这个参数

9.1.1.等远程仓库里面有内容后,下次再从本地库上传内容的时候只需:$ git push origin master

9.1.2.上传项目的过程可能需要等段时间

在这里插入图片描述

9.2.再重新刷新Github页面,进入新建的那个仓库里面就会发现项目已经成功上传

9.2.1.至此就完成将本地项目上传到Github的整个过程

在这里插入图片描述

10.注意坑!!

10.1.就是在上面第七步创建远程仓库的时候,如果勾选Initialize this repository with a README

10.1.1.(就是创建仓库的时候自动给创建个README文件)

10.2.那么到第九步将本地仓库内容推送到远程仓库的时候就会报错

10.2.1.failed to push some refs to https://github.com/guyibang/TEST2.git的错

在这里插入图片描述

11.这是由于新创建的那个仓库里面的README文件不在本地仓库目录中

11.1.这时可以通过以下命令先将内容合并

12.后面再push就能成功
$ git pull --rebase origin master

13.总结:其实只需要进行下面几步就能把本地项目上传到Github

13.1.在本地创建个版本库(即文件夹),通过git init把它变成Git仓库

13.2.把项目复制到这个文件夹里面,再通过git add . 把项目添加到暂存区(仓库)

13.3.再通过git commit -m "注释内容" 把项目提交到本地仓库

13.4.Github上设置好SSH密钥后,创建个GitHub远程仓库
13.4.1.通过git remote add origin https://github.com/guyibang/TEST2.git
13.4.2.将本地仓库和远程仓库进行关联

13.5.最后通过git push -u origin master把本地仓库的项目推送到远程仓库(Github)上

13.5.1.(若创建远程仓库的时候自动创建了README文件会报错,解决办法看上面)

三.第三种方法

1.第一步:Git客户端安装好

2.第二步:github注册好账号

3.第三步:本地电脑随便建立个文件夹,如github,进入此文件夹,在地址栏中输入cmd

在这里插入图片描述

4.第四步:cmd后点击右侧箭头按钮,进入docs命令窗口,输入git命令,说明git安装成功

在这里插入图片描述

5.第五步:回到之前的github界面,看到下面几个指令告诉如何将代码上传
git init
git add README.md
git commit -m "first commit"
git remote add origin https://github.com/hongduhong/test.git
git push -u origin master

在这里插入图片描述

6.第六步:在上面本地创建的github文件夹中,放入要上传的项目代码

6.1.然后按照上面的指令开始操作,执行指令
6.1.1.git init(建立本地仓库)

6.1.2.git add * (将代码添加到本地暂存区,《*是添加全部代码,代码全部更新》)

6.1.3.git commit -m "first commit" (提交到本地仓库,《引号里说明提交了什么东西,就是注释》)

在这里插入图片描述

6.1.4.git remote add origin https://github.com/hongduhong/test.git

6.1.4.1.将本地仓库和远程github仓库进行关联(后面的地址就是之前创建github的远程仓库地址)

6.1.5.git push -u origin master(将本地仓库的项目代码push到远程github仓库的master分支上)

在这里插入图片描述
在这里插入图片描述

四.Git命令

1.查看、添加、提交、删除、找回,重置修改文件
git help <command>  #显示command的help
git show #显示某次提交的内容 git show $id
git co -- <file> #抛弃工作区修改
git co . #抛弃工作区修改
1.1.git add <file> #将工作文件修改提交到本地暂存区
1.2.git add . #将所有修改过的工作文件提交暂存区
1.5.git rm <file> #从版本库中删除文件
1.6.git rm <file> --cached #从版本库中删除文件,但不删除文件
1.3.git reset <file> #从暂存区恢复到工作文件
1.4.git reset -- . #从暂存区恢复到工作文件
git reset --hard #恢复最近一次提交过的状态,即放弃上次提交后的所有本次修改

git ci <file> git ci . git ci -a # 将git add, git rm和git ci等操作都合并在一起做    

git ci --amend #修改最后一次提交记录
git revert <$id> #恢复某次提交的状态,恢复动作本身也创建次提交对象
git revert HEAD #恢复最后一次提交的状态
2.Git查看提交记录
2.1.git log <file> #查看该文件每次提交记录
2.2.git log -p <file> #查看每次详细修改内容的diff
git log -p -2 #查看最近两次详细修改内容的diff
2.3.git log --stat #查看提交统计信息
3.Git本地分支管理,查看、切换、创建和删除分支
3.1.git br -r # 查看远程分支
3.2.git br <new_branch> #创建新的分支
3.7.git br -v #查看各个分支最后提交信息
3.8.git br --merged #查看已经被合并到当前分支的分支
3.9.git br --no-merged #查看尚未被合并到当前分支的分支
3.3.git co <branch> #切换到某个分支
3.4.git co -b <new_branch> #创建新的分支,并且切换过去
git co -b <new_branch> <branch> #基于branch创建新的new_branch
git co $id #把某次历史提交记录checkout出来,但无分支信息,切换到其他分支会自动删除
git co $id -b <new_branch> #把某次历史提交记录checkout出来,创建成一个分支
3.5.git br -d <branch> #删除某个分支
3.6.git br -D <branch> #强制删除某个分支 (未被合并的分支被删除的时候需要强制)
4.Git分支合并和reba
4.1.git merge <branch> #将branch分支合并到当前分支
git merge origin/master --no-ff #不要Fast-Foward合并,这样可以生成merge提交

git rebase master <branch> #将master rebase到branch
相当于: git co <branch> && git rebase master && git co master && git merge <branch>
5.Git暂存管理
5.1.git stash #暂存
5.2.git stash list #列所有stash
5.3.git stash apply #恢复暂存的内容
5.4.git stash drop #删除暂存区
6.Git远程分支管理
6.1.git pull #抓取远程仓库所有分支更新并合并到本地
git pull --no-ff #抓取远程仓库所有分支更新并合并到本地,不要快进合并
git fetch origin #抓取远程仓库更新
6.2.git merge origin/master #将远程主分支合并到本地当前分支
git co --track origin/branch #跟踪某个远程分支创建相应的本地分支
git co -b <local_branch> origin/<remote_branch> #基于远程分支创建本地分支

6.3.git push #push所有分支
6.4.git push origin master #将本地主分支推到远程主分支
6.5.git push -u origin master #将本地主分支推到远程(如无远程主分支刚创建,用于初始化远程仓库)
6.6.git push origin <local_branch> #创建远程分支, origin是远程仓库名
git push origin <local_branch>:<remote_branch> # 创建远程分支
git push origin :<remote_branch> #先删除本地分支(git br -d <branch>),然后再push删除远程分支
7.Git远程仓库管
7.1.git remote -v #查看远程服务器地址和仓库名称
7.2.git remote show origin #查看远程服务器仓库状态
7.3.git remote add origin git@ github:robbin/robbin_site.git #添加远程仓库地址
git remote set-url origin git@ github.com:robbin/robbin_site.git #设置远程仓库地址(用于修改远程仓库地址) 
7.4.git remote rm <repository> #删除远程仓库
8.创建远程仓库
git clone --bare robbin_site robbin_site.git #用带版本的项目创建纯版本仓库
scp -r my_project.git git@ git.csdn.net:~ #将纯仓库上传到服务器上
mkdir robbin_site.git && cd robbin_site.git && git --bare init #在服务器创建纯仓库
8.1.git remote add origin git@ github.com:robbin/robbin_site.git #设置远程仓库地址
8.2.git push -u origin master #客户端首次提交
8.3.git push -u origin develop #首次将本地develop分支提交到远程develop分支并且track
git remote set-head origin master #设置远程仓库的HEAD指向master分支

五.遇到问题和解决方案

1.如图说明安装的本地git客户端的版本太低

在这里插入图片描述

1.1.解决方案
1.1.1.点击鼠标右键,选择点击“Git Bash Here1.1.2.输入命令git update(git update-git-for-windows),将Git客户端更新到最新

在这里插入图片描述
在这里插入图片描述

2.提交到远程仓库的时候提示fatal :remote origin already exists
2.1.解决方案
2.1.1.删除远程仓库命令:git remote rm origin

2.1.2.首次操作需要输入用户名和密码,就按提示输入用户名和密码即可
git config --global user.name "这里是你github的用户名" 

git config --global user.email 这里是你注册github的邮箱
  • 8
    点赞
  • 32
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

平头哥-测试

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值