zoukankan      html  css  js  c++  java
  • Git rebase命令

    git rebase --abort 会回到rebase操作之前的状态,之前的提交的不会丢弃;

    git rebase --skip 则会将引起冲突的commits丢弃掉;

    git rebase --continue 用于修复冲突,提示开发者,一步一步地有没有解决冲突,fix conflicts and then run "git rebase --continue"

    1、使用 $git rebase --abort

    按(2)“引入问题”步骤中执行后,执行:

    $ git rebase --abort

    $ git push

    仍然出现Updates were rejected because the remote contains work that you do not have locally...错误,说明此次提交与rebase之前的提交一样,出现的除外也一样(逻辑不严谨,大致是这个意思),可以猜想git rebase --abort会当前的commit会回到rebase操作之前的状态 。

    当然此时可以使用$git add ,重新提交新的文件,例如

    $ git add c.sh

    $ git commit -m "XXXX"

    $ git push

    在远程master分支上可以查看提交内容,展示如下:

     技术分享

    2、使用 $git rebase --skip

    git rebase --skip 引起冲突的commits会被丢弃,对于本文应用的例子来说开发者A对c.sh文件的commit无效,开发者A自己修改的部分全部无效,因此,在使用skip时请慎重。

    执行:$ vim c.sh

    查看本地c.sh文件提交内容,展示如下图所示,执行语句之后开发者A的修改无效。

     技术分享

    3、使用 $git rebase --continue

    可以运行git rebase –continue继续直到完成

    You must edit all merge conflicts and then mark them as resolved using git add

    无误之后就回退出。回到matser分支

    git rebase -i 交互式的变基,最后合成一条整齐的提交线

  • 相关阅读:
    JS调用App方法及App调用JS方法
    提升用户体验之 选用合适的鼠标光标
    js仿QQ拖拽删除
    Linux下安装 mongodb
    QQ分享-定制分享卡片
    js判断浏览器语言实现网站国际化
    js复制内容到剪切板
    为什么会有堆内存和栈内存之分
    Avro实现RPC
    zookeeper学习day01
  • 原文地址:https://www.cnblogs.com/gloryhope/p/10277590.html
Copyright © 2011-2022 走看看