假设我们有一个名为feature-branch
的功能分支。该分支的开发人员分支用于获取票证,然后打开feature-brach
的PR。
如果发生以下情况:
feature-branch
,并在分支ticket-a
上开发feature-branch
并将先前的两次提交压缩为一次。 ticket-a
合并为feature-branch
会有合并冲突或任何问题吗?由于ticket-a
分支将有两个提交,而feature-branch
则只有两个提交,因此被压缩。
答案 0 :(得分:1)
如果您有类似的东西:
a[i]
然后您壁球
Ancestor -- A -- B
\-- C
您将更改历史记录分支,并使用新的哈希值创建新的提交。因此,如果您尝试合并这两个分支,则git将尝试找到它们的共同祖先,然后从此处开始合并。但是Ancestor -- AB
\-- A -- B -- C
并没有包含A
所做的所有更改,这会引起冲突。
要解决此问题,建议您重新设置其他分支的基础,使其包含压缩的提交。您可以在第二个分支中使用rebase onto完成此操作:
git rebase --on to AB C branch2