学会Git玩转GitHub(第二篇) 入门详解 - 精简归纳
学会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(第二篇) 入门详解 - 精简归纳的更多相关文章
- 学会Git玩转GitHub(第一篇) 入门详解 - 精简归纳
学会Git玩转GitHub(第一篇) 入门详解 - 精简归纳 JERRY_Z. ~ 2020 / 9 / 25 转载请注明出处!️ 目录 学会Git玩转GitHub(第一篇) 入门详解 - 精简归纳 ...
- 学会Git玩转GitHub(第三篇) 入门详解 - 精简归纳
学会Git玩转GitHub(第三篇) 入门详解 - 精简归纳 JERRY_Z. ~ 2020 / 10 / 25 转载请注明出处!️ 目录 学会Git玩转GitHub(第三篇) 入门详解 - 精简归纳 ...
- JAVA JDK 环境变量配置 入门详解 - 精简归纳
JAVA JDK 环境变量配置 入门详解 - 精简归纳 JERRY_Z. ~ 2020 / 9 / 13 转载请注明出处!️ 目录 JAVA JDK 环境变量配置 入门详解 - 精简归纳 一.为什么j ...
- Python安装与环境变量配置 入门详解 - 精简归纳
Python安装与环境变量配置 入门详解 - 精简归纳 JERRY_Z. ~ 2020 / 9 / 24 转载请注明出处!️ 目录 Python安装与环境变量配置 入门详解 - 精简归纳 一.下载Py ...
- gcc g++ 安装与配置 入门详解 - 精简归纳
gcc g++ 安装与配置 入门详解 - 精简归纳 JERRY_Z. ~ 2020 / 9 / 24 转载请注明出处!️ 目录 gcc g++ 安装与配置 入门详解 - 精简归纳 一.下载MinGW ...
- Sublime Text3 for Java 编译运行环境配置 入门详解 - 精简归纳
Sublime Text3 for Java 编译运行环境配置 入门详解 - 精简归纳 JERRY_Z. ~ 2020 / 9 / 24 转载请注明出处!️ 目录 Sublime Text3 for ...
- Cisco思科模拟器 交换机IP地址的配置 入门详解 - 精简归纳
Cisco思科模拟器 交换机IP地址的配置 入门详解 - 精简归纳 JERRY_Z. ~ 2020 / 10 / 10 转载请注明出处!️ 目录 Cisco思科模拟器 交换机IP地址的配置 入门详解 ...
- Cisco思科模拟器交换机划分VLAN 入门详解 - 精简归纳
Cisco思科模拟器交换机划分VLAN 入门详解 - 精简归纳 JERRY_Z. ~ 2020 / 10 / 24 转载请注明出处!️ 附: 交流方式: ️ ️ ️ QQ: 1846334075 We ...
- GoSDK的安装及环境变量配置 入门详解 - 精简归纳
GoSDK的安装及环境变量配置 入门详解 - 精简归纳 JERRY_Z. ~ 2020 / 10 / 29 转载请注明出处!️ 目录 GoSDK的安装及环境变量配置 入门详解 - 精简归纳 一.进入G ...
随机推荐
- archaius(1) 概述
archaius作为配置管理工具,内部主要定义了下几个模块: 配置源 配置源的主要功能是将配置从目标位置加载到内存中.详见:archaius源码分析之配置源 配置管理器 配置管理器的主要功能是管理内存 ...
- Druid实现数据库连接用户密码加密
使用ConfigFilter ConfigFilter的作用包括: 从配置文件中读取配置 从远程http文件中读取配置 为数据库密码提供加密功能 1 配置ConfigFilter 1.1 配置文件从本 ...
- ftp自动上传下载同步工具 免费好用的ftp自动上传下载同步工具
有时我们需要定时上传文件到FTP,可大多数FTP工具并不支持定时上传功能,这时我们就需要可以定时ftp上传的工具(服务器管理工具).它是一款功能强大的服务器集成管理器,包含win系统和linux系统的 ...
- 趣图:后端工程师做 UI 的活
扩展阅读 趣图:苦逼的后端工程师 趣图:前端 VS 后端 [趣图]开发人员腹黑的一面
- 数据类型-字符串(str)
1.只要是被单引号,双引号,三引号括起来的,都是字符串类型 2.字符串里面元素:单个字母,单个符号,都称之为一个元素 例如:s='hello!' (6个元素) len(数据)统计数据的长度pri ...
- 安装了高版本OS X 之后无法使用MacPorts的port命令
安装了高版本OS X 之后无法使用MacPorts的port命令 pod update提示: Current platform "darwin 14" does not match ...
- 编程体系结构(04):JavaIO流文件管理
本文源码:GitHub·点这里 || GitEE·点这里 一.IO流分类 1.分类角度 流的方向 输入流:从数据源中读取数据到应用中的流: 输出流:从应用中将数据写入到目的地的流: 流数据类型 字节流 ...
- is_mobile()判断手机移动设备
is_mobile()判断手机移动设备.md is_mobile()判断手机移动设备 制作响应式主题时会根据不同的设备推送不同的内容,是基于移动设备网络带宽压力,避免全局接收pc端内容. functi ...
- linux操作系统网卡漂移导致网络不可用
1.故障描述 公司有100-150台服务器安装RHEL7.4&中标麒麟7.4系统,为方便编辑配置网卡,使用脚本方式配置为biosname=0,ifname=0,目的是为将en1o2p此类长字符 ...
- Istio 运维实战系列(3):让人头大的『无头服务』-下
本系列文章将介绍用户从 Spring Cloud,Dubbo 等传统微服务框架迁移到 Istio 服务网格时的一些经验,以及在使用 Istio 过程中可能遇到的一些常见问题的解决方法. 失败的 Eur ...