学会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 ...
随机推荐
- [go语言]-深入理解singleflight
目录 前言 singleflight使用场景 singleflight 简介 singleflight的使用 从singleflight的test最简单用法 验证并发重复请求 singleflight ...
- Java中的常见锁(公平和非公平锁、可重入锁和不可重入锁、自旋锁、独占锁和共享锁)
公平和非公平锁 公平锁:是指多个线程按照申请的顺序来获取值.在并发环境中,每一个线程在获取锁时会先查看此锁维护的等待队列,如果为空,或者当前线程是等待队列的第一个就占有锁,否者就会加入到等待队列中,以 ...
- python协程(yield、asyncio标准库、gevent第三方)、异步的实现
引言 同步:不同程序单元为了完成某个任务,在执行过程中需靠某种通信方式以协调一致,称这些程序单元是同步执行的. 例如购物系统中更新商品库存,需要用"行锁"作为通信信号,让不同的更新 ...
- Generator函数在流程控制中的应用
扯蛋 做了两年的Nodejs全栈开发,不知道为什么跑来做游戏呢(大概是厦门nodejs不好找工作吧).用的是网易的pomelo的游戏框架.现接手了一个棋牌游戏:二十一点,不懂的规则的可以自行百度. 二 ...
- Kafka处理请求的全流程分析
大家好,我是 yes. 这是我的第三篇Kafka源码分析文章,前两篇讲了日志段的读写和二分算法在kafka索引上的应用 今天来讲讲 Kafka Broker端处理请求的全流程,剖析下底层的网络通信是如 ...
- mongodb安装教程(亲测有效)
网上太多教程了,都是说的不明不白,所以自己整理一份 #参考官网: https://docs.mongodb.com/manual/tutorial/install-mongodb-on-red-hat ...
- STM32与CH455g通信测试(仅键盘)
1.概述 CH455是数码管显示驱动和键盘扫描控制芯片.CH455内置时钟振荡电路,可以动态驱动4位数码管或者32只LED:同时还可以进行28键的键盘扫描:CH455通过SCL和SDA组成的2线串行接 ...
- 题目:写出一条SQL语句,查询工资高于10000,且与他所在部门的经理年龄相同的职工姓名。
create table Emp( eid char(20) primary key, ename char(20), age integer check (age > 0), did char ...
- Tensorflow学习笔记No.5
tf.data卷积神经网络综合应用实例 使用tf.data建立自己的数据集,并使用CNN卷积神经网络实现对卫星图像的二分类问题. 数据下载链接:https://pan.baidu.com/s/141z ...
- ubuntu20 make redis6
redis 官网:https://redis.io redis 下载和编译位置: cd /opt 下载 redis: wget http://download.redis.io/releases/re ...