zoukankan      html  css  js  c++  java
  • git使用情景:正在写代码,突然线上出现了bug或commit之后,想撤销commit 操作

    场景1  正在写代码,突然线上出现了bug

    拉一个新分支,老司机都推荐这样做,充分利用了git特性
    先暂存一下工作空间改动:

    git stash


    新建一个分支,并且换到这个新分支

    git branch fix_bug //新建分支

    git checkout fix_bug //切换分支


    这时候就可以安心的在这个fix_bug分支改bug了,改完之后:

    git add .
    git commit -m "fix a bug"


    切换到master主分支

    git checkout master


    从fix_bug合并到master分支

    git merge fix_bug

    提交代码

    git push


    然后从暂存区恢复代码

    git stash pop

    ============
    原文链接:https://blog.csdn.net/w958796636/article/details/53609589

    场景2:commit之后,想撤销commit

    写完代码后,我们一般这样

    git add . //添加所有文件

    git commit -m "本功能全部完成"

    执行完commit后,想撤回commit,怎么办?


    这样凉拌:

    git reset --soft HEAD^

    这样就成功的撤销了你的commit

    注意,仅仅是撤回commit操作,您写的代码仍然保留。


    说一下个人理解:
    HEAD^的意思是上一个版本,也可以写成HEAD~1

    如果你进行了2次commit,想都撤回,可以使用HEAD~2


    至于这几个参数:
    --mixed
    意思是:不删除工作空间改动代码,撤销commit,并且撤销git add . 操作
    这个为默认参数,git reset --mixed HEAD^ 和 git reset HEAD^ 效果是一样的。

    --soft
    不删除工作空间改动代码,撤销commit,不撤销git add .

    --hard
    删除工作空间改动代码,撤销commit,撤销git add .

    注意完成这个操作后,就恢复到了上一次的commit状态。

    顺便说一下,如果commit注释写错了,只是想改一下注释,只需要:
    git commit --amend

    =========

    此时会进入默认vim编辑器,修改注释完毕后保存就好了。
    原文链接:https://blog.csdn.net/w958796636/article/details/53611133

  • 相关阅读:
    SOJ4478 Easy Problem II(模拟、栈)
    SOJ4480 Easy Problem IV (并查集)
    暴力枚举法总结
    区间DP学习总结
    51nod 1019 逆序数(逆序数+离散化)
    win7系统查看硬盘序列号步骤
    雷达图制作方法
    matlab更改打开时候默认路径
    excel多组数据散点图生成
    EndNote(三)之中文引文导入方式
  • 原文地址:https://www.cnblogs.com/venje/p/15671656.html
Copyright © 2011-2022 走看看