1

我有一个开发分支和几个功能分支。我在 Atlassian 上找到了这个 git 工作流程。这个想法是 dev 分支将只读给除版主之外的所有开发人员。所有开发人员都只能在功能分支之外工作。但问题来了——

开发人员 A 开始在功能分支 A (FB-A) 上工作。与此同时,Dev 分支将取得进展。开发人员 A 完成了他在 FB-A 上的工作并提交并将代码推送到 FB-A(提交 #1)。然后,他将从 Dev 拉到 FB-A 以获取最新信息。来自 Dev 的所有更改都将添加/修改到 FB-A。然后他将提交这些文件并将其推送到 FB-A(提交 #2)。现在,文件已准备好合并到 dev 分支。当我尝试这样做时,它会提交 Commit #1 和 Commit #2。这是正常的做法吗?

是否可以仅将第一个提交合并到 Dev,因为它具有开发人员的实际更改?我在这里错过了什么吗?

4

1 回答 1

0

根据您的描述,提交 #2 似乎是一个合并提交。这是一个很好的做法,因为如果您在合并时最近已经合并dev到,那么您可能几乎没有合并冲突。提交 #2 将包含有关如何将更新合并到一起的重要信息,因此保留合并提交是正常做法。当您将其合并到分支时,此合并提交落在分支上也是正常的,因为您要添加的提交不在.FB-AFB-AdevdevFB-AdevFB-Adevdev

注意:即使您想在合并之前删除提交 #2 dev,您也可能需要创建另一个合并提交以解决冲突。

于 2013-11-04T06:04:10.740 回答