zoukankan      html  css  js  c++  java
  • git merge rebase的区别及应用场景

      前两天和同事交流发现他在日常开发中跟上游保持同步每次都是用git pull操作,而我一直习惯git fetch然后rebase,发现这两种操作后的log是有些区别的。他每次pull操作之后都会自动生成一个merge记录,而使用fetch+rebase就没有。

      查了下发现其实就是git pull命令两种参数的区别:

      git pull --merge  默认参数,相当于:git fetch + git merge

      git pull --rebase 手动指定,相当于:git fetch + git rebase

      git fetch所做的只是把远程库的文件获取到本地,也就是git merge和git rebase的区别。

    在Git文档里,关于两个参数的应用场景有个很经典的原则:

      

    你可以用rebase来合并那些本地已经修改了但是还没push的提交以保持和上游同步,但从来不要rebase任何你已经push过的任何东西。

    先记录一下,想到合适的例子再来补充~

  • 相关阅读:
    lucene1.0.1写入分析
    esm数据迁移
    datadog入门
    elasticsearch datehistogram聚合
    cookie实战
    泛型编程
    lucene分析
    2020年12月阅读文章
    迭代
    lucene搜索
  • 原文地址:https://www.cnblogs.com/hechao123/p/6416664.html
Copyright © 2011-2022 走看看