一、历史记录查看
 1、查看提交的历史记录:git log,展示的信息比较全面
在这里插入图片描述
 2、使一次记录的提交日志展示在一行:git log --pretty=oneline
在这里插入图片描述
 或者:git log --oneline,只能显示当前指针所在版本及其之前的版本记录
在这里插入图片描述
 或者:git reflog,这里展示的每次提交时的指针位置,对于我们的版本回退很有帮助,其中的数字表示指针需要移动几次会回到指定版本
在这里插入图片描述
二、版本重置(三种方式)
在这里插入图片描述
 1、基于索引值操作[推荐]:可前进和后退
  命令:git reset --hard 索引值(reflog中的索引值即可)
在这里插入图片描述
 2、使用^符号:只能后退,几个代表后退几步,移动的是当前指针HEAD的位置
在这里插入图片描述
 3、使用~符号:只能后退,后退的步数可以指定,比使用^更便捷
在这里插入图片描述
三、reset 命令的三个参数对比
  除了上面的–hard之外,git还提供了–soft和–mixed两个参数,这三个参数的对比如下:
  --soft:仅仅在本地库移动 HEAD 指针,相当于只改变本地库的内容,不改变暂存区和工作区的内容,如果使用–soft后退,则相当于使用git add添加或修改了新的内容至暂存区,但是还没有使用git commit提交至本地库,因为本地库的版本后退相遇对暂存区就是暂存区的前进
在这里插入图片描述
  --mixed:在本地库移动 HEAD 指针并且重置暂存区,相当于本地库和暂存区的版本同时改变
在这里插入图片描述
  --hard:在本地库移动 HEAD 指针,同时会重置暂存区和工作区,使暂存区和工作区的内容和本地库中指针指定的版本一致。此时相当于本地库和暂存区和工作区都做了版本调整,也就是说–hard操作会将暂存区和工作区刷新为本地库指针指向的位置

四、删除文件找回
 1、新建一个文件并提交至git本地库
在这里插入图片描述
  能找回的文件必须是被git管理的文件
 2、将本地文件删除
在这里插入图片描述
 3、把文件删除的操作提交至本地库
在这里插入图片描述
 4、查看历史操作记录
在这里插入图片描述
 5、删除文件的找回,实际上就是将版本后退至文件创建的提交位置
在这里插入图片描述
  原理就是我们对本地库的任何操作都会被记录下来形成历史记录,这就是为什么我们可以做版本的前进和后退。同样本地文件的删除提交至本地库之后也会形成相应的记录,我们可以恢复至删除之前的版本,这样就相当于文件还没有被删除,类似于时空穿梭的场景。

  若文件的删除只是提交到暂存区,并未提交到本地库想恢复文件,其操作和将文件删除提交至本地库是一样的:
在这里插入图片描述
在这里插入图片描述
  这说明reset命令的–hard操作会将暂存区和工作区刷新为本地库指针指向的某个历史位置,因此文件删除能够恢复的前提是文件之前曾被提交至本地库(这才会产生文件存在的记录),也就是说文件是被git管理的。

五、比较文件差异
  使用git diff命令,将工作区的文件和暂存区或者本地库的文件进行比较
 1、工作区和暂存区的文件比较:不带文件名比较所有文件
在这里插入图片描述
 比较具体的某个文件:加上具体的文件名称
在这里插入图片描述
 2、工作区和本地库比较
在这里插入图片描述

  Tip:对于Git只有将操作提交至本地库才会产生版本记录,在此之前是没有版本记录的。

Logo

瓜分20万奖金 获得内推名额 丰厚实物奖励 易参与易上手

更多推荐