美文网首页
git rebase 把多次commit合并成一个

git rebase 把多次commit合并成一个

作者: gzfgeh | 来源:发表于2016-12-12 17:36 被阅读526次

    需求

    开发过程,自己的一个模块没有完成或者有事情走开了,不想提交到仓库,但是有恐怕代码覆盖或者丢失,就把代码提交到本地仓库了,但是如果一个模块比较大的时候,自己本地提交的次数就比较多了,这样就不想在公司远程仓库中出现那么多commit,所以就想把本地的多次commit合并成一个提交到远程仓库中.

    操作

    1. git log(尽量不要git pull, 会把别人的log pull下来)

      先查看一下log,要把前面多少次commit合并了 1.png
      我自己的log,我想把前面5个合并,然后ctrl+c 退出.
    2. git rebase -i HEAD~5

      命令中5代表合并的commit数,命令以后出现下面页面 2.png
      然后用vim命令修改pick,把图中头部5个中的pick修改为squash,注意只修改后四个,第一个不用修改,git会自动处理第一个,修改后保存退出,出现以下页面 3.png
      修改commit以后退出,就会出现下面页面 4.png
      表示合并成功.
    3. git pull
      现在要拉取代码,以免覆盖别人的代码.

    4. git push
      提交代码,把本地修改提交到远程仓库,这样看到远程仓库就一条commit记录.

    相关文章

      网友评论

          本文标题:git rebase 把多次commit合并成一个

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