【问题标题】:Retrospectively build a release history in the master branch in git在 git 的 master 分支中追溯构建发布历史
【发布时间】:2018-04-12 17:59:18
【问题描述】:

我正在尝试将 git flow 的原则追溯应用到我的存储库中。

我已经标记了我所有的发布,我想

  1. 创建一个新的 master 分支
  2. 将每个标记的版本合并到新的主分支中作为压缩提交。

结果是一个主分支,其历史记录仅包含发布。

我尝试执行上述操作,第一次合并按预期进行。并且差异确认我的主分支与标记版本相同。第二次提交似乎正确合并,但与相应的标记发布提交的差异揭示了许多差异。

  1. 标记发布合并导致提交不同的原因是什么?

  2. 如何确保合并的结果与标记的发布提交完全相同?

谢谢

【问题讨论】:

    标签: git merge git-flow


    【解决方案1】:

    当合并对应于不同标签的两个发布分支时,会导致一棵树不是其中一个标签的精确副本,这并不奇怪,因为它恰好是一个 merge 和结果取决于导致这两个标签的历史记录。

    所以我猜你的问题相当于需要命令

    git merge -s theirs branch-of-release
    

    不存在,如 Git 的 doc of git merge 中所述:

    [...] 请注意,与我们的不同,没有他们的合并策略 [...]

    尽管如此,我在 SO 上找到了以下可能对您的用例有用的答案:git command for making one branch like another

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2015-07-24
      • 2019-06-06
      • 2021-09-03
      • 2017-12-08
      • 1970-01-01
      • 2018-03-11
      • 1970-01-01
      • 2021-03-29
      相关资源
      最近更新 更多