1. git、Github简介

git是一个免费的、开源的版本控制软件。版本控制是一种记录一个或者若干个文件内容变化,以便将来查询阅读特定版本修订情况的管理系统。

Github是全球最大的设计编程以及代码托管网站Github官网,Github可以托管各种git库,并提供一个web界面。

git是版本控制软件,Github是项目代码托管的平台,借助git来管理项目代码。Github可以学习到优秀的开源项目,关注行业前辈了最新的行业动态以及最前沿的技术。

2. git命令流程图


3. 存储前的准备工作

确定本机已经安装好git软件。
确保已经注册好远程仓库,即Github账号。

4. 实现步骤

1. 首先创建一个本地的版本库(即创建一个文件夹)

你可以直接右键点击新建文件夹,也可以打开git-bash.exe命令窗口通过命令来创建。
现在我通过命令行新建一个test文件夹(你也可以在其他的任何地方创建这个文件夹 注意:在哪个文件夹中打开git-bash.exe命令,就在该文件夹下创建一个新的版本库),并且进入该文件夹下。

2. 进入刚才创建的版本库test (使用 cd +文件夹名称命令进入指定的文件夹

3. 查看当前在哪个版本库中,即查看当前在哪个路径之下(绝对路径),确定是否在 test 版本库中。(使用pwd命令进行查看)

4. 通过命令 git init 把这个版本库变成Git可管理的仓库。


这里需要注意一下 :

在路径的最后边出现了带括号的master (master)说明此时将test的这个版本库提交到了git的主分支master上.

这时你会发现在test里面多了个.git文件夹,他是Git用来追踪和管理版本库的。

如果你看不到,是因为它默认时隐藏文件,那你就需要设置一下让隐藏文件可见。

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

此时还没有将文件添加到暂存区中,所有会显示 nothing to commit ,代表没有任何的文件。

5. 使用命令 git add . 把项目添加暂存区里面去,不要忘记后面的小数点”.“,意为添加该文件夹下的所有文件。如果想添加某个文件可以使用命令 git add 某个具体文件

第一种 :git add . : 代表将该文件夹下的所有文件都添加到暂存区里面。

第二种 :git add 文件名称 : 代表将指定的文件添加到暂存区里面。


注意 :绿色的代表添加到该版本库中成功 红色的代表没有添加到该版本库中。

在这个过程中你可以一直使用status来查看当前管理的状态。

6. 用 git commit -m "第一次提交" 命令:上一步进行管理的项目提交到仓库。

-m 后面的双引号里面是本次提交的注释内容,这个可以不写,但是最好写上,不然会报错。(写上的话便于我们后期在远程仓库中寻找到这个文件)至此,我们本地git仓库这边的工作做完了,下面连接远程仓库(也就是连接Github)。

create mode 100644 :代表创建模式 100644。

100代表regular file(常规文件),644代表文件权限。

7. 远程仓库设置

由于本地Git仓库和Github仓库之间的传输是通过SSH加密的,所以连接时需要设置一下:

7.1 创建SSH

已有ssh密钥:先看一下你的C盘用户目录下有没有.ssh目录,有的话看下里面有没有 id_rsaid_rsa.pub 这两个文件,有的跳到下一步。

cd ~/.ssh :此命令是查看是否配置过密钥 (如果不报错说明配置过,如果报错说明没有配置过)
此文件也可以在C盘/用户/用户名/.ssh 中查看
ls : 此命令是查看配置过密钥的列表
id_rsa.pub : 这个是公钥文件

创建新的ssh密钥

第一种方式:

1.输入命令:cd ~
2.然后输入:ssh-keygen.exe


*第二种方式 :

首先输入ssh-keygen -t rsa -C 邮箱名称 这个命令,然后回车。这时你就会在用户下的.ssh目录里找到idrsa和idrsa.pub这两个文件。

7.2 登录Github —>点击右上角的图标 —>选择Settings —>点击左边的SSH and GPG KEYS —>点击右上角的New SSH key —>Title随便填 —>把刚才id_rsa.pub里面的内容复制到Title下面的Key内容框里面 —>最后点击Add SSH key —>完成SSH Key的加密。具体步骤如下:

7.3 在Github上创建一个Git仓库

8. 在Github上创建好Git仓库后通过命令 git remote add origin 想要传输到的Github仓库的SSH 和本地仓库进行关联。(SSH连接在下边的这个图片已经给出)


此时这里的输入的命令是 :

git remote add origingit@github.com:YunboCheng4379/test.git

注意 :运行之后不出现任何的错误信息表示连接成功。

注意 : origin 后面加的是你Github上创建好的仓库的地址(SSH)。

9. 关联好之后通过命令git push -u origin master将本地库的所有内容推送到远程仓(Github)


由于新建的远程仓库是空的,所以要加上-u这个参数,等远程仓库里面有了内容之后,下次再从本地库上传内容的时候只需 git push origin master 可以省略掉 -u 这个参数。有些上传出现问题的实和,可以改成-f参数。

刷新Github页面进入刚才新建的仓库里面就会发现项目已经上传成功。

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

注意有坑:在上面第5步新建远程仓库的时候如果你勾选了Initialize this repository with a README(就是创建仓库的时候自动给你创建一个README文件),那么到了第7步你将本地仓库内容推送到远程仓库的时候就会报一个 failed to push some refs to https://github.com/guyibang/TEST2.git 的错。

原因:由于你新创建的那个仓库里面的README文件不在本地仓库目录中,这时我们可以通过 git pull --rebase origin master 命令先将内容合并,此时再push就能成功了。

5. 命令补充

  • 生成公钥和密钥

ssh-keygen -t rsa

  • 查看已有的配置信息

git config --list

  • Git 中从远程分支获取最新的版本到本地有两个命令。

git fetch : 相当于是从远程分支获取到最新版本到本地,不会自动merge(合并代码)。
git pull : 相当于是从远程仓库获取到最新版本并 merge到本地。
git pull = git fetch + git merge

6. 总结:本地项目通过git上传到github

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

2)、把项目复制到这个文件夹里面(git pull 地址),再通过 git add . 把项目添加到仓库;

3)、再通过 git commit -m 注释内容 把项目提交到本地仓库;

4)、在Github上设置好SSH密钥后,新建一个远程仓库,通过 git remote add origin 想要传输到的Github仓库的SSH 将本地仓库和远程仓库进行关联;

5)、最后通过 git push -u origin master 把本地仓库的项目推送到远程仓库(也就是Github)上。

注意:
如果没有pull,后面上传时会发生错误,因为两个库的文件不同,只能强制push

git push -u origin master -f

总结的很好,以备之后学习和使用!

参考:学术趴
学习推荐

git-->Github相关推荐

  1. Git与github基本操作

    一.  git安装与简单配置 1.      git的安装 首先进入git的官方网站git-scm.com 下载自己电脑对应的git版本,然后点击安装即可 点击上图的红色部分进行下载 安装的时候直接默 ...

  2. 用 Git 和 Github 提高效率的 10 个技巧!

    点击上方"方志朋",选择"设为星标" 回复"666"获取新整理的面试资料 来源:segmentfault.com/a/11900000038 ...

  3. 在Pycharm工具中配置集成Git和GitHub

    在Pycharm工具中配置集成Git和GitHub 1.集成Git. 打开Pycharm,  点击File-->Settins-->Version Control-->Git 然后在 ...

  4. R,Git和Github(下)

    作者:Wenhu 博客:http://bioinfostar.com/ 本讲第一部分,介绍git的"足够你用"命令:本讲为第二部分,介绍github的主要用途,包括版本管理.分枝管 ...

  5. clone git 修改保存路径_Git和Github详细入门教程(别再跟我说你不会Git和Github)

    前言:成功不是将来才有的,而是从决定去做的那一刻起,持续累积而成.你好,我是梦阳辰,快和我一起搞定Git和Github吧. 文章目录 01.Git概述 02.Git的本地仓库操作 Git的版本回退操作 ...

  6. 关于Git和Github你不知道的十件事

    Git 和 GitHub都是非常强大的工具.即使你已经使用他们很长时间,你也很有可能不知道每个细节.我整理了Git和GitHub可能提高日常效率的10个常用技巧. GitHub 快捷键: t 和 w ...

  7. Windows 下使用Git管理Github项目

    Git Git是一个开源的分布式版本控制系统,用以有效.高速的处理从很小到非常大的项目版本管理.最初由Linus Torvalds编写,用作Linux内核代码的管理.在推出后,Git在其它项目中也取得 ...

  8. 用Git向gitHub上传项目

    用Git向gitHub上传项目 1.安装git 2.在git安装目录下,运行git-bash.exe  如图所示 3.在git中绑定你注册gitHub是的用户名.邮箱. $ git config -- ...

  9. git和github的关系

    写在前面:我身边好多人问我git和github的区别,想必对于好多人没学过的大佬们恐怕也是一脸懵逼,但是不知道也是不行的,所以我今天就来讲一讲这二者的区别和联系. 用一句话形容这二者的关系:git是弓 ...

  10. git push github SSL报错处理

    本文仅供学习交流使用,如侵立删!demo下载见文末 git push github SSL报错 问题:OpenSSL SSL_connect: SSL_ERROR_SYSCALL in connect ...

最新文章

  1. python加密库_python基于pyDes库实现des加密的方法
  2. 【python基础】list操作相关:扩充、条件查找【IndexError: list assignment index out of range】...
  3. 对NUnitAddIn做了下修改
  4. SpringBoot中整合使用Freemarker
  5. 北斗导航 | 北斗卫星导航信号串行捕获算法MATLAB仿真(附源代码)
  6. 绝地求生大逃杀最新服务器,《绝地求生大逃杀》将建立该国家或地区玩家的专有服务器!...
  7. 【TypeScript系列教程12】Number对象的基本使用
  8. 电脑文件里哪里能用计算机,电脑里的哪些无用文件是可以放心删除的?
  9. MySQL数据库---数据库管理
  10. 制作透明背景的微信头像
  11. 2021软科中国计算机专业排名
  12. (一)双目标定OpenCV读双目摄像头合并图像并分割
  13. 高数_第3章重积分_三重积分可证明为3个定积分的乘积__很重要
  14. ROS Base path和Source space不一致问题,修改文件名后无法make问题,catkin_make报错问题
  15. alphaTab是一个跨平台音乐符号和吉他tablature渲染库
  16. 粗粒度与细粒度的解释
  17. 超图对接伟景行osg数据使用说明
  18. 读《Evolving Algebraic Constructions for Designing Bent Boolean Functions》
  19. PAT(BASIC)1037. 在霍格沃茨找零钱(20)
  20. 查看树莓派系统及版本

热门文章

  1. mwc config.h 中文注释
  2. 《简·爱》《艺妓回忆录》《离家五百里》
  3. 无需公网IP,内网穿透实现外网远程桌面办公 2-3
  4. 【AI视野·今日CV 计算机视觉论文速览 第177期】Thu, 16 Jan 2020
  5. Android拦截短信并屏蔽Notification
  6. “智慧工厂”上线,破局传统工厂数字化转型
  7. 0x80000000为什么等于-2147483648和负数如何在内存上储存
  8. 嵌入式Linux--地址的总结--0x80000000起
  9. 谷歌cartographer+EAI的YDLIDAR-X4激光雷达建图实现(二)
  10. upc 8377: Playoff(搜索-dfs)