August Rush

一个还在努力成长的小火汁!

游龙当归海,海不迎我自来也。

We create our own demons.

You can reach me at augustrush0923@gmail.com
Git如何版本回退
发布:2022年06月07日 | 作者:augustrush | 阅读量: 623

背景

因为线上代码有些需要调整的,所有用hotfix分支进行了补丁。但提交时不小心把develop分支的merge到了hotfix并一路提交到了远程的hotfix分支上。

当前已经进入下一次的迭代了,本次更新补丁不希望把下一次迭代的代码提交到线上,所以此时需要进行版本回退。

解决思路

1.查看Git提交历史记录

Git中,每次commit提交都会生成一个历史纪录。使用 git log 查看commit历史:

其实 git log 有个 --oneline 参数。简化返回内容,更易于我们获取信息

2.获取版本ID后,进行回退

每个记录都有一个与之对应的 commit id ,所以可以使用命令 git reset --hard "commit_id" 来回退到相应的版本。

除此之外,在Git中,使用 HEAD 来代表当前版本,如需回退到前一个版本,可以使用命令 git reset --hard HEAD^ ,前两个版本则用HEAD~2表示,以此类推。

3.再次查看commit历史

可以发现,之前版本commit ID已经不见了,此时就已经回退到指定版本了。

扩展

当你发现你回退的之前版本又是你希望用到的版本,此时你已经忘记了其对应的commit ID了。该怎么办?

这时候可以使用 git reflog 命令来查看操作历史:

  $ git reflog

    47384c8 HEAD@{0}: reset: moving to 47384c8

    ec88247 HEAD@{1}: reset: moving to ec88247

    ...

此时可以根据commit信息找到对应commit ID后执行 git rest 操作就可以回到一开始回退前的版本。



  • 标签云

  • 支付宝扫码支持一下

  • 微信扫码支持一下



基于Nginx+Supervisord+uWSGI+Django1.11.1+Python3.6.5构建

京ICP备20007446号-1 & 豫公网安备 41100202000460号

网站地图 & RSS | Feed