1

我有一个名为的开发分支devel、一个名为的特性分支feature_1和一个名为的测试分支testing。这就是我所做的:

  • feature_1分支于devel
  • 在这里进行了提交,以实现该功能
  • feature_1被合并到testing
  • feature_1在( with --no-ff)上发现了一些错误
  • 已经做出了额外的承诺feature_1
  • 同时,一个修补程序已合并到devel,并且feature_1尚未重新设置
  • feature_1已再次合并为testing, with --no-ff)
  • 分支上的所有测试testing都成功了,feature_1分支可以合并回devel
  • 我合并feature_1develwith --no-ff,但不是合并复制在feature_1分支上创建的所有提交,它只创建了一个合并提交,表示feature_1分支已被合并。

谁能解释为什么 --no-ff 没有保留提交历史?我倾向于说这是因为该feature_1分支尚未针对 重新设置devel,但我不确定。

4

1 回答 1

1

git rebase默认情况下将保留提交历史记录相反,agit merge --no-ff通过设计生成一个提交。
所以你在与 with 合并后看到的feature_1是正常的。devel--no-ff

--no-ff

即使合并解析为快进,也要创建合并提交。

于 2012-10-25T10:18:22.147 回答