Git 学习第二天(一)
继续昨天的学习。
回顾一下,昨天我们安装了git 并创建了登录名及邮箱,还向git仓库提交了一个readme.txt的文本文件
下面,我们来修改下这个文件,将内容改为
Git is a distributed version control system.
Git is free software.
保存后,我们通过
git status命令可以让我们时刻掌握仓库当前的状态,上面的命令告诉我们,readme.txt被修改过了,但还没有准备提交的修改。

我们知道了文件被修改过,但不知道修改的内容,此时,可以通过
git diff 来查看修改了什么内容

知道了修改过的内容,就可以放心提交到仓库了,还是分为两步,
第一步:git add

第二步:git commit -m ""

___________________________________________________________________________
接下来,我们再练习一次。
将文本内容改为

然后进行添加 git add ,提交 git commit 。
这样,我们手动的将版本存起来,如果一旦将文件误删或更改错误,就可以从最近的一次commit恢复到你曾经保存过的某一个版本。
接下来,我们看看一共提交了几个版本:
git log

也可以 在后面加上 --pretty=oneline

那么,如何回退到以前保存过的某一个版本呢?
在Git中,用HEAD表示当前版本,上一个版本就是HEAD^,上上个版本就是HEAD^^,如果会回退的比较多时,可以这样写HEAD~100这里的100,只是举个例子,实际上,可以填写任何数字,当然,要在你提交过的历史版本范围内。
回退版本操作如下:

此时,我们就回退到了上一个版本。
打开文本

我们发现,内容已经更改为 add distributed 这个版本,
也可以通过 cat readme.txt 命令来查看

如果,我们想前进到 add hello git 这个版本呢?
办法就是找到add hello git 的版本号,
通过 git reset --head 4f45f675b27af93de8bce8458b72d1817d8125fc 就可以前进到这个版本

再通过 git log 查看版本信息

我们发现,最近的版本,又是 add hello git 这个版本了,
cat readme.txt

文本内容也已经更改过来。
如果,我们关闭了 git Bush 窗口,无法找到版本号应该怎么办?
Git 提供了一个命令 git reflog 用来记录每一次命令

这样,我们就可以找到任意一次的版本号,回退到任意版本
Git 学习第二天(一)的更多相关文章
- GIT 学习第二天 (二)
工作区和暂存区 工作区: 就是你在电脑里能看到的目录,比如:webgit 文件夹 就是一个工作区 版本库: 工作区有一个隐藏目录 .git ,这个不算工作区,而是Git的版本库 Git的版本库里存了很 ...
- GIt学习第二天之版本回退、工作区和暂存区
搬运自 ‘廖雪峰的官方网站’ 地址:https://www.liaoxuefeng.com/ 1.版本回退 在Git中,我们用git log命令显示从最近到最远的提交日志,如果嫌输出信息太多,看得眼花 ...
- Git 学习第二天(三)
删除文件: 先新建一个test文件到webgit版本库中,然后 git add git commit 当然,我们可以在文件夹中删除文件,git 也提供了命令 rm file 此时 ...
- Git速成学习第二课:管理修改与删除文件
Git速成学习笔记整理于廖雪峰老师的官网网站:https://www.liaoxuefeng.com/ 管理修改 首先我们需要明确,为什么说Git管理的是修改而不是文件呢? 我们首先对于已有的read ...
- Git学习之路(2)-安装GIt和创建版本库
▓▓▓▓▓▓ 大致介绍 前面一片博客介绍了Git到底是什么东西,如果有不明白的可以移步 Git学习之路(1)-Git简介 ,这篇博客主要讲解在Windows上安装Git和创建一个版本库 ▓▓▓▓▓▓ ...
- Git学习(一):初始化仓库、添加文件、版本回退
目录 Git学习(一):初始化.添加文件.版本回退 初始化一个仓库 添加文件到Git仓库 版本回退 Git学习(一):初始化.添加文件.版本回退 初始化一个仓库 本文使用的命令行工具为cmder,部分 ...
- 【学习总结】Git学习-参考廖雪峰老师教程四-时光机穿梭
学习总结之Git学习-总 目录: 一.Git简介 二.安装Git 三.创建版本库 四.时光机穿梭 五.远程仓库 六.分支管理 七.标签管理 八.使用GitHub 九.使用码云 十.自定义Git 期末总 ...
- 【学习总结】Git学习-参考廖雪峰老师教程六-分支管理
学习总结之Git学习-总 目录: 一.Git简介 二.安装Git 三.创建版本库 四.时光机穿梭 五.远程仓库 六.分支管理 七.标签管理 八.使用GitHub 九.使用码云 十.自定义Git 期末总 ...
- 【学习总结】Git学习-参考廖雪峰老师教程七-标签管理
学习总结之Git学习-总 目录: 一.Git简介 二.安装Git 三.创建版本库 四.时光机穿梭 五.远程仓库 六.分支管理 七.标签管理 八.使用GitHub 九.使用码云 十.自定义Git 期末总 ...
随机推荐
- 92、R语言分析案例
1.读取数据 > bank=read.table("bank-full.csv",header=TRUE,sep=";") > 2.查看数据结构 & ...
- .net Core 在 CentOS7下,报The type initializer for 'Gdip' threw an exception.异常
.net Core允许在 Centos7 上,使用 System.Draw.Common类库时,报以下错误: "Class":"System.TypeInitializa ...
- HDU1251-统计难题-map+输入
Ignatius最近遇到一个难题,老师交给他很多单词(只有小写字母组成,不会有重复的单词出现),现在老师要他统计出以某个字符串为前缀的单词数量(单词本身也是自己的前缀). Input输入数据的第一部分 ...
- python作业/练习/实战:2、注册、登录(文件读写操作)
作业要求 1.实现注册功能输入:username.passowrd,cpassowrd最多可以输错3次3个都不能为空用户名长度最少6位, 最长20位,用户名不能重复密码长度最少8位,最长15位两次输入 ...
- LLppdd never give up!
LLppdd never give up! Time Limit: 1 s Memory Limit: 256 MB 题目背景 LLppdd是个被毒害的小朋友,他的初中生涯充满了坎坷. 直到初三的某一 ...
- linux 之文件重命名
没有专门的重命名 命令 用 mv a b 就可以重命名了 mv :move 移动文件(延伸功能:重命名,linux系统没有专门的重命名命令) 基本格式: 移动文件:mv 文件名 移动目的地文件名 重命 ...
- spring事务实现的几种方式
1.编程式事务管理对基于POJO的应用来说是唯一选择. 需要在代码中调用 beginTransaction() commit() rollback()等事务管理相关的方法. 2.基于Transacti ...
- Elastic-Job分布式任务调度
任务调度是指系统为了自动完成特定任务,在约定的特定时刻去执行任务的过程,有了任务调度即可解放更多的人力由系统自动去执行任务. 多线程方式实现: Timer方式实现: ScheduledExecutor ...
- java nio socket实例
Server端代码: public class NioServer { //通道管理器 private Selector selector; //获取一个ServerSocket通道,并初始化通道 p ...
- window 下总是object_detection/protos/*.proto: No such file or directory
这是因为目前的protoc3.5有Bug,换成3.4就好了https://github.com/google/protobuf/releases/tag/v3.4.0