git回退操作

一、理解三个区

在 .git 文件中,index 是暂存区,HEAD 指针指向的是 refs/heads/master 里面存放的是最新一次提交的 commit_id(是一个索引,指向的是对象库的一个对象,存放文件修改内容)

三个区:

二、版本回退操作

两个操作:

查看仓库状态:git status

显示暂存区文件和工作区文件不同之处:git diff filename

我们先改变了 readme 文件内容,用 git status 后就会发现已经修改而且还告诉我们修改内容,但是没有 commit

当我们 commit 提交修改后,用 git diff 就不会有结果,因为已经一样了。

所以现在已知工作区的文件有两个版本(内容不同):hello git 和 hello git\nhello world

版本回退命令:git reset [--soft] [--mixed] [--hard] commit_id

工作区 暂存区 版本库 回退选项
hello git\nhello world hello git\nhello world hello git --soft
hello git\nhello world hello git hello git --mixed(默认)
hello git hello git hello git --hard

版本回退原理:

所以仅仅只是修改指针的话回退速度就很快。

上一篇:Row


下一篇:leetcode704. Binary Search