前言

当我们用 pycharm 提交代码的时候,每天都要 commit 提交的内容,有时候发现后面写的代码还不如前两天的稳定。
这时候想把代码回退到某次 commit 提交,可以使用git的 reset 功能实现。
reset 回滚有三种类型:

  • Mixed 此为默认方式 回退一个版本,且会将暂存区的内容和本地已提交的内容全部恢复到未暂存的状态,不影响原来本地文件(未提交的也不受影响)

  • soft 回退一个版本,不清空暂存区,将已提交的内容恢复到暂存区,不影响原来本地的文件(未提交的也不受影响)

  • hard 回退一个版本,清空暂存区,将已提交的内容的版本恢复到本地,本地的文件也将被恢复的版本替换

Show History

打开pycharm-VCS-Git-Show History 查看 commit 提交记录。

bf92fa5f78636c8dc04aa9e55770aa78.png

可以看到上一次的提交是昨天晚上的记录,我想回退到3月7号的这次 commit 的代码上, commit的提交内容是fz。

a0f0947bf6e06e83dfd533009b64d626.png

先记住commit提交的id,也就是第一列显示的”916929a”

Reset HEAD

打开pycharm-VCS-Git-Reset HEAD 回滚当前的分支yoyoketang

41a2dd1374660a74b710f68069e92e7f.png

Reset Type类型有三种,默认Mixed:

  • Mixed 此为默认方式 回退一个版本,且会将暂存区的内容和本地已提交的内容全部恢复到未暂存的状态,不影响原来本地文件(未提交的也不受影响)

  • soft 回退一个版本,不清空暂存区,将已提交的内容恢复到暂存区,不影响原来本地的文件(未提交的也不受影响)

  • hard 回退一个版本,清空暂存区,将已提交的内容的版本恢复到本地,本地的文件也将被恢复的版本替换

To Commit 输入框输入commit id,也就是”916929a”,这里选择默认的Mixed回滚类型。

e1943e234543f0c8b9b8bcc8a0f6be1d.png

回滚之前可以先点下 Validate 按钮确定下有没这个commit id

eeb181dc83cc318c8587468c5201c01a.png

点Reset 之后就可以回滚成功啦

287691a5c9c26d3849fa879f98efb55e.png

恢复到最新的

前面已经回滚到3月7号的commit这次提交的内容上,如果我们又想回到最新的代码,可以查看commit log记录查看到commit id为”2932c8c”
打开pycharm-VCS-Git-Show History 查看 commit 提交记录-点log切换af4853a826033738ef33f1b751c9cbc4.png
VCS-Git-Reset HEAD - To Commit 输入框输入commit id,也就是”2932c8c”,这样就回到最新的代码了。

Reset hard

前面 Reset HEAD 时候用默认是Mixed会发现上次提交的代码test_yoyoketang.py文件还在,变成了红色,如果想彻底回到上次的commit,
后面写的代码都不要,Reset Type类型就选hard(慎重选择,要不然后面写的本地代码都找不到了)

43df59cdead64863ca33b46710588a56.png

点Reset 之后就可以完全回到上次的代码了

1b2a193f407e7374145814e3dc318fe5.png

2020年第三期《python接口自动化+测试开发》课程,4月5号开学(火热报名中!)

本期上课时间:4月5号-6月27号,每周六、周日晚上20:30-22:30

联系QQ:283340479

Logo

腾讯云面向开发者汇聚海量精品云计算使用和开发经验,营造开放的云计算技术生态圈。

更多推荐