1.企业场景
大家在企业开发中,难免会碰到这样的场景:项目上线之后, 出现了比较紧急的bug,一时半会无法修复,那么为了保证线上产品能够稳定运行,就需要做代码回滚。工作区内容怎么撤销,暂存内容怎么撤销,已经提交的怎么撤销?
2. 解决思路
代码回滚的思路是比较简单的: 首先查看代码提交日志,日志中会展示已提交代码的各个版本, 然后回滚到对应的版本即可。
- 我们可以直接使用git命令来完成以上的步骤。
- 也可以使用开发工具IDEA自身集成的Git可视化插件。
3. 动手实践
3.1)使用git命令
查看提交日志
首先,用 git reflog查看代码提交日志,如下图所示:
这里左侧是主要演示代码,右侧是对应的git操作,演示文本中的3行代码分别对应3次提交。
代码回滚
假设上述的案例中, 第3次也是最后一次提交有bug,那么我们想要回滚到第2次提交,该如何操作呢?有以下两种方案:
第一种方案
使用git reset --hard commit_id
回退到指定的版本,如下图所示:
这里的commit_