美文网首页培训教程
Git高级用法学习之代码回滚

Git高级用法学习之代码回滚

作者: aitality | 来源:发表于2018-08-27 10:16 被阅读0次

    场景一:当你提交了一次修改,但是发现修改的方法是错误的,想要回滚到之前的状态。
    场景二:当你做了很多次改动,但是周四发布的时候,有部分功能不能发布。
    场景三:当你提交了多次后,发现线上版本有问题,需要紧急修复。
    ......

    STEP1、备份想要回滚的分支

    备份很重要,是一个很好的习惯,即遍无法回滚,也不要造成现有分支代码错乱。

    git checkout -B branchBackUp
    

    SETP2、找到回滚节点

    首先说一下什么是回滚节点,简单的就是指你的提交历史记录,每一个提交历史记录就是一个节点。那么如何查找呢?

    #查看所有的提交记录
    git log  
    commit 0216f1fb3d8ed5d6298c4f0ae3d7454c4ad23a22
    Author: david <david@david>
    Date:   Fri Aug 24 17:03:28 2018 +0800
    
        modify add step 4
    
    #通过show commit id查看具体的改动
    git show 0216f1fb3d8ed5d6298c4f0ae3d7454c4ad23a22
    

    STEP3、回滚到指定提交节点

    M1:硬回滚,指将提交指针HEAD移动到回滚节点,同时回滚节点之后所提交的代码全部丢弃。

    git reset --hard
    

    M2:软回滚,指将提交指针HEAD移动的回滚节点,但是回滚节点之后提交的代码都会保留到暂存区。

    git reset --soft
    

    注意:合理使用混滚方式,方能事半功倍,建议使用软回滚,除非你确定不想要提交的代码了。

    STEP4、撤销回滚

    这个是终极大招,因为这是后悔药,即便是硬回滚也没有关系,代码一样可以恢复如初。在git中,checkout,reset等操作都会被记录下来,方便撤销操作。

    #查看操作历史
    git reflog
    

    总结

    本文只是抛砖引玉,还有很多更高级的操作,有兴趣的同学自行研究!

    推荐

    Git从入门到熟练使用
    Git全面教程
    Git高级教程

    相关文章

      网友评论

        本文标题:Git高级用法学习之代码回滚

        本文链接:https://www.haomeiwen.com/subject/gfkziftx.html