回看了一下自己的git基础操作笔记,感觉少了一个关键步骤——回溯版本。要知道git设计的意义其实就是管理版本,让自己在一些极端情况下不至于丢掉几个月的工作成果。
曾经见过一个非常形象的比喻,git就好比提供给你打游戏的时候存档的服务,你在过完一些关键关卡或者在打boss前要先存档避免浪费大量时间
本期教程就手把手来记录一下我的回溯学习过程。
一、理论知识
回溯就一个指令:git reset --hard commit_id
这个指令可以像时光机一样带你把代码仓库转换到任何时间段。
git reset
是指令主体,--hard
先用着,之后解释,commit_id
就是我们对应版本号
下面用实例操作解释这些部分
二、多次创建、修改文档
首先在任意位置右键点击git bash来打开当前位置的命令行
输入命令git init
把该目录创建为git的仓库
你会看到目录下有个.git文件,说明创建成功(默认隐藏,记得在顶部设置打开显示隐藏的功能,详见以前的笔记)
在命令行输入命令touch test.txt
来创建一个文件。当然你也可以直接右键然后新建,这里为了复习一下Linux命令基本操作而已,走出自己舒适区。
创建成功
在里面输入你喜欢的任意文本
保存完之后,这就是版本一了。不过他现在和git还没啥关系。我们要把它存到暂存区。在git bash输入命令git add test.txt
即可。
接着我们把它存入git本地仓库。输入命令git commit -m
加上你对这个文档的更新描述就行。如图即为成功。
紧接着我们修改文档内容,并进行重新提交操作两次。图略了,除了修改文档之外别的都跟上面一样。
第二个版本的文档内容是:hello world again
第三个版本的文档内容是:no hello world this time
我们可以用git log
命令来查看我们提交版本的历史记录:
黄色字体commit后面那一大串十六进制数就是我们的要得到“commit_id”。我要把咱们回归到最初的文档,复制id,在命令行输入git reset --hard
后加上那个id就行。
可以看到咱们的文档已经还原了