学会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. 关于消息中间件ActiveMQ的企业级应用

    几个月前看到项目中配置了activeMq,于是想通透的掌握activeMq,便去网上学习搜寻资料,找到这一篇博客挺不错的,解释的比较清楚,包括原理使用和配置,特此把它分享给大家. 众所周知,消息中间件 ...

  2. 如何修改MySQL数据库名称

    比如数据库名称old_db想改名为new_db MySQL修改数据库名称比较麻烦,不支持直接修改,需要通过其它方式间接达到修改数据库名称的目的. 在 MySQL 5.1.23 之前的旧版本中,我们可以 ...

  3. Magicodes.IE之花式导出

    总体设计 Magicodes.IE是一个导入导出通用库,支持Dto导入导出以及动态导出,支持Excel.Word.Pdf.Csv和Html.在本篇教程,笔者将讲述如何使用Magicodes.IE进行花 ...

  4. hystrix 源码分析以及属性的配置

    一.feign与hystix结合 1.1测试环境搭建 架构如图: 非常简单,就是Order服务通过feign调用product服务的一个获取商品信息的一个接口: package com.yang.xi ...

  5. 使用VS2015从TFS获取项目后编译报错

    把VS2015关闭后,打开C:\Windows\Temp,把里面的文件清空后,重新打开VS即可.

  6. Python练习题 001:4个数字求不重复的3位数

    听说做练习是掌握一门编程语言的最佳途径,那就争取先做满100道题吧. ----------------------------------------------------------------- ...

  7. centos7安装YouCompleteMe,vim打造成C++的IDE

    一.安装python3 1.安装编译工具 yum -y groupinstall "Development tools" yum -y install zlib-devel bzi ...

  8. 使用gettid() 注意事项

    gettid()这个函数不可以在程序中直接使用,它是Linux本身的一个函数, 但是:仅包含#include <sys/types.h>,然后使用,编译时会报该函数未定义之类的错误! 解决 ...

  9. 模式串 从 0 开始的KMP算法

    /** * 看了 b站视频 BV1jb411V78H 对KMP有了一点理解,然后我写了这个代码 * 这个代码和视频里面的有一点不同,字符串是从 0 开始的,而不是从1 开始的 * 希望能够帮到学习KM ...

  10. 安卓app功能或自动化测试覆盖率统计(不用instrumentation启动app)

    一文带你揭秘如何采取非instrumentation启动app,打造实时统计覆盖率,一键触发覆盖率测试报告. 在上篇文章,一文带你解决Android app手工测试或者自动化测试覆盖率统计(撸代码版) ...