乐趣区

Git教程04回滚

大纲

  • 恢复
  • 回滚
  • 练习

恢复

恢复 是我们进行了修改,在 没有进行 commit 之前 ,将文件恢复到 最近一次 commit的状态。
首先我们的文件保持在最近一次 commit 之后,全勾的状态。

然后我们进行修改

我们遇到一些情况,比如:
1、有些重要的东西 被删除 了,且无法通过 ctrl+ z 恢复。
2、需求已经 变更 ,代码要先回到原来的版本。
3、编写的代码是 错误 的,但已经跟原文件差别过大,要恢复。
恢复方式
1、到线上仓库去复制之前版本的内容到本地,但有时我们并没有上传。
2、git 提供的恢复功能。

恢复功能 Revert
项目目录 右键 => TortoiseGit => Revert

选择要恢复的文件,点击 OK。

恢复成功。

回滚

回滚 是将当前的版本切换会 历史 的某个 版本
使用场景
1、新版本爆发了很严重的 bug,需要回滚到之前的稳定版本。
2、我们要查看历史记录,了解之前的版本的情况。
操作
目录 右键 => TortoiseGit => Show log

日志页面

可以查询到该分支所有的提交情况。
每次提交都对应一个版本。使用 SHA- 1 作为版本号。
标红的就是我们当前所处的版本。

选择一个版本,右键 => Reset … to this

回滚页面

选择 Hard 模式。会将代码回滚到这个版本。
至于 Soft 和 Mixed 模式,并不会回滚代码,而只是把 commit 版本改回那个版本。

回滚成功。

此时的代码就是当时那个版本的了。
这种回滚会将该版本之后的所有版本都 删除
查看 Show Log 就是下面的情况。

所以要回到最新的版本,需要从远程仓库拉取。
回滚后进行修改造成的 冲突,与 03_冲突所描述问题是一致的,直接搞定即可。

直接获取历史版本
选择 Export this version…,导出历史版本到 zip 文件。

练习

模拟恢复和回滚的操作。


github: https://github.com/lvancer/course_git

退出移动版