学会Git玩转GitHub(第二篇) 入门详解 - 精简归纳


JERRY_Z. ~ 2020 / 10 / 25

转载请注明出处!️



一、目的

通过Git这个版本控制系统管理本地项目同时管理GitHub平台托管项目代码!


二、Git的下载及安装

官网下载地址:<www.git-scm.com/download/win>



双击.exe文件安装:

除了修改安装路径外,其他步骤一律无脑下一步……





安装完成后,右键会有Git的快速访问通道,点击即可快速在当前目录下打开Git,当然在cmd命令行中同样可以打开Git




三、初次使用Git前的配置

在命令行模式里输入以下命令:

git config --global user.name "用户名"		//配置Git用户名
git config --global user.email "邮箱" //配置Git用户邮箱

配置后输入:

git config --list	//列出配置列表

若成功列出了用户名与邮箱,那么便是配置成功了!


四、Git理论基础

(1)、Git记录的是什么

Git会将每一个版本独立保存!



(2)、Git的三棵树



git init
//初始化一个Git仓库
//(自动生成一个.git隐藏文件夹,不要改动此文件夹,否则会发生错误)

方式一、直接利用cmd命令行操作



方式二、直接在打开Git操作



所在目录为工作目录,也就是”第一课树“,该目录下存在.git文件夹,该文件夹就是管理跟踪版本信息的!

git add		//将文件提交到暂存区

在工作区创建一个README.md文件,这是项目的说明文档

将该说明文档添加到暂存区中,若没有任何提示则表明提交成功



git commit -m ""	//将文件提交到Git仓库,并添加提交说明

提交成功后,会出现一段提示,表明提交成功,并标明一些基本格式信息

同理:再在工作区中创建一个LICENSE文件,该文件内注明MIT版权协议

(MIT版权协议:所有开源协议中最为宽松的一种!外界引用自己的项目代码时只需要包含该文件就可以了,且自己的项目代码可以被用于大部分形式及用途)


五、查看工作状态和历史提交

(1)、查看状态

git status
//用于显示工作目录和暂存区的状态,使用此命令能看到那些修改被暂存到了,
//哪些没有, 哪些文件没有被Git tracked到。
//git status不显示已经commit到项目历史中去的信息。
//看项目历史的信息要使用git log

列出未跟踪文件,并给出建议可以通过add命令将其添加到暂存区

我们将其add入暂存区,再git status

之后我们再git commit -m "add a LICENSE file"

突然我们发现在LICENSE文件中忘记注明时间及作者了,所以我们直接在工作区中直接修改LICENSE文件





之后我们再git status

显示:

On branch master

Changes not staged for commit:

(use "git add ..." to update what will be committed)(使用“ git add <文件> ...”更新将提交的内容)

(use "git restore ..." to discard changes in working directory)(使用“ git restore <文件> ...”放弃工作目录中的更改,即:用原来的覆盖刚刚修改的)

modified: LICENSE

no changes added to commit (use "git add" and/or "git commit -a")

接下来我们输入:

git restore LICENSE

然后我们再打开LICENSE文件,发现文件又退回修改之前的状态了,因为这是将原来以及提交的文件覆盖修改的文件,所以这个命令使用时一定要注意!

现在我们再把LICENSE文件重新修改

再输入git status回到上上步状态

此时我们使用git restore ...的上一个建议git add ...并在最后git status

来到这步时,我们先不将其commit到Git仓库,而是再对LICENSE文件进行修改

在修改之后我们再次git status

此时会发现出现了两个LICENSE文件,其中上一个文件是已经提交到暂存区中的文件,而下面一个文件则是在工作目录中最后被修改了的但还未跟踪的那一个文件

如果此时直接输入git commit -m""提交的就是第一个LICENSE文件,也就是原本在暂存区中的LICENSE文件

而假如需要提交工作区中的那一个LICENSE文件(也就是:最后修改过的那一个LICENSE文件)的话,需要先git add将该文件覆盖暂存区中的那一个LICENSE文件,之后再来git commit -m"",这样提交到Git仓库的才是最后修改的哪一个LICENSE文件

git log		//查看历史提交记录,排序是从近到远

可以发现,在列出的提交记录中,每一次记录上方都有一串值,这个是Git为每一个提交所标记的ID值,全世界唯一标记对应这一次提交!这在超大型项目管理中才不会发生混乱!

六、回到过去



git reset HEAD	//恢复暂存区
git checkout --


交流方式:

️ ️ ️

QQ: 1846334075

WeChat: zhoujirui54

CSDN:https://blog.csdn.net/D_si_God

Cnblogs:https://www.cnblogs.com/JERRY-Z-J-R/

GitHub:https://github.com/JERRY-Z-J-R

Gitee:https://gitee.com/JERRY-Z-J-R

学会Git玩转GitHub(第二篇) 入门详解 - 精简归纳的更多相关文章

  1. 学会Git玩转GitHub(第一篇) 入门详解 - 精简归纳

    学会Git玩转GitHub(第一篇) 入门详解 - 精简归纳 JERRY_Z. ~ 2020 / 9 / 25 转载请注明出处!️ 目录 学会Git玩转GitHub(第一篇) 入门详解 - 精简归纳 ...

  2. 学会Git玩转GitHub(第三篇) 入门详解 - 精简归纳

    学会Git玩转GitHub(第三篇) 入门详解 - 精简归纳 JERRY_Z. ~ 2020 / 10 / 25 转载请注明出处!️ 目录 学会Git玩转GitHub(第三篇) 入门详解 - 精简归纳 ...

  3. JAVA JDK 环境变量配置 入门详解 - 精简归纳

    JAVA JDK 环境变量配置 入门详解 - 精简归纳 JERRY_Z. ~ 2020 / 9 / 13 转载请注明出处!️ 目录 JAVA JDK 环境变量配置 入门详解 - 精简归纳 一.为什么j ...

  4. Python安装与环境变量配置 入门详解 - 精简归纳

    Python安装与环境变量配置 入门详解 - 精简归纳 JERRY_Z. ~ 2020 / 9 / 24 转载请注明出处!️ 目录 Python安装与环境变量配置 入门详解 - 精简归纳 一.下载Py ...

  5. gcc g++ 安装与配置 入门详解 - 精简归纳

    gcc g++ 安装与配置 入门详解 - 精简归纳 JERRY_Z. ~ 2020 / 9 / 24 转载请注明出处!️ 目录 gcc g++ 安装与配置 入门详解 - 精简归纳 一.下载MinGW ...

  6. Sublime Text3 for Java 编译运行环境配置 入门详解 - 精简归纳

    Sublime Text3 for Java 编译运行环境配置 入门详解 - 精简归纳 JERRY_Z. ~ 2020 / 9 / 24 转载请注明出处!️ 目录 Sublime Text3 for ...

  7. Cisco思科模拟器 交换机IP地址的配置 入门详解 - 精简归纳

    Cisco思科模拟器 交换机IP地址的配置 入门详解 - 精简归纳 JERRY_Z. ~ 2020 / 10 / 10 转载请注明出处!️ 目录 Cisco思科模拟器 交换机IP地址的配置 入门详解 ...

  8. Cisco思科模拟器交换机划分VLAN 入门详解 - 精简归纳

    Cisco思科模拟器交换机划分VLAN 入门详解 - 精简归纳 JERRY_Z. ~ 2020 / 10 / 24 转载请注明出处!️ 附: 交流方式: ️ ️ ️ QQ: 1846334075 We ...

  9. GoSDK的安装及环境变量配置 入门详解 - 精简归纳

    GoSDK的安装及环境变量配置 入门详解 - 精简归纳 JERRY_Z. ~ 2020 / 10 / 29 转载请注明出处!️ 目录 GoSDK的安装及环境变量配置 入门详解 - 精简归纳 一.进入G ...

随机推荐

  1. python:一切皆对象

      学过java语言的童鞋都知道,java是一门面向对象语言,其基本思想就是一切皆对象.Python也是一样的,甚至Python将面向对象思想贯彻地更加彻底,因为在Python中,class本身是一个 ...

  2. list、set、map的区别和联系

    结构特点 List和Set是存储单列数据的集合,Map是存储键值对这样的双列数据的集合: List中存储的数据是有顺序的,并且值允许重复:Map中存储的数据是无序的,它的键是不允许重复的,但是值是允许 ...

  3. JavaEE的核心API与组件

    JAVAEE Java ee 平台由一整套服务(Services).应用程序接口(APIs)和协议构成,它对开发基于Web的多层应用提供了功能支持,下面对JAVAEE中的13种技术规范进行简单的描述( ...

  4. 摊牌了!我要手写一个“Spring Boot”

    目前的话,已经把 Spring MVC 相关常用的注解比如@GetMapping .@PostMapping .@PathVariable 写完了.我也已经将项目开源出来了,地址:https://gi ...

  5. Java基础——HashMap

    1.HashMap底层的实现 JDK 1.7 中 HashMap 是以数组+链表的形式组成的 JDK 1.8 之后数组+链表/红黑树的组成的,当链表大于 8 并且容量大于 64 时,链表结构会转换成红 ...

  6. .NetCore.RazorPages 获取访客的公网IP与局域网IP

    dotnet.core 获取访客的公网IP与局域网IP 现在奉上代码 public void OnGet() {var ip = Content(HttpContext.Connection.Remo ...

  7. Book of Shaders 04 - 网格噪声:Worley Noise

    0x00 思路 假设要生成 4 个网格,可以先在空间中指定 4 个特征点.对于每个像素点,计算它到最近特征点的距离,将这个距离当作结果值输出. #ifdef GL_ES precision mediu ...

  8. 山寨一个Spring的@Component注解

    1. 前言 我们在上一篇对Mybatis如何将Mapper接口注入Spring IoC进行了分析,有同学问胖哥这个有什么用,这个作用其实挺大的,比如让你实现一个类似@Controller的注解(或者继 ...

  9. 013 01 Android 零基础入门 01 Java基础语法 02 Java常量与变量 07 基本数据类型变量的存储

    013 01 Android 零基础入门 01 Java基础语法 02 Java常量与变量 07 基本数据类型变量的存储 变量和它的值如何在内存中进行存储的? 前面学习过:Java中的数据类型分为基本 ...

  10. Linux 安装Navicat Premium 15

    参考:https://gitee.com/andisolo/navicat-keygen 安装 aptitude 管理软件 $ sudo apt-get install aptitude 安装Navi ...