Git 合并主文件覆盖更改



我有 3 个分支。 1( 大师 2( 开发 :- 当前发展 3(发布:- 当我们停止从开发分支开发时,创建此分支并且只在此分支中执行回归错误。 同时,开发分支将致力于所有未来的开发。

现在我们将发布分支合并到 master。然后尝试将主合并到开发。

将主站合并到开发版时,这就是我正在做的事情。 1( git 结帐大师 2(git拉取 3( git 结帐开发 4(从dev创建新分支并将其称为合并主到开发 5( git checkout merge-master-to-dev 6( git 合并大师

当我这样做时,我没有看到任何冲突。 所以看起来所有文件/提交都是从主到合并主到开发的合并属性。但是当我查看代码中的某些文件时,我可以看到缺少一个或多个提交。以前从未见过这种情况发生,所以知道我做错了什么吗?

结果是在

dev分支中进行的提交B,但是:

  • 当我们移动到发布时,相同的提交 B 被回滚,并且
  • 当我们将发布合并回 DEV 时,无论出于何种原因,该提交 A 在合并过程中都消失了

"无论出于何种原因"是一个合并,它的工作是向目标分支(dev(报告源分支的修改(这里是发布中的提交回滚(

为了避免这些合并,您可以考虑另一种工作流程:gitworkflow(一个词(,其中dev分支在发布后简单地重新创建,并合并功能分支。

关键部分:

"public"和"next"(又名"devel"(分支永远不会合并到master。它们是"暂时的"或"短暂的",总是删除/重新创建。
只有功能分支会合并到生命周期分支(publicnextmaster(。这意味着您可以随时选择在开发生命周期的一个阶段和下一个阶段之间删除功能。

最新更新