在功能分支合并回开发之前,在功能分支之间重新提交的任何问题

Any issue rebasing commits between feature branches before they are merged back to develop

我正在为一个足够简单的项目添加单元测试,但后来我发现我正在为其编写单元测试的代码中存在错误。

该错误相当简单,仅涉及一行(三元语句被反转)。因此,就像一个优秀的小开发人员一样,我打开了一张工单,修复了错误修复分支上的错误,并打开了一个拉取请求以将错误修复合并到开发中。

我切换回我用于单元测试的功能分支,当然我的单元测试因为错误而失败,但仍然失败,因为错误修复在它自己的分支中并且正在等待与打开的 Pull 合并请求。

我想尽快恢复我的单元测试工作,尽可能少的问题,并避免在我必须使用单元测试功能分支打开我的合并请求时发生合并冲突。

我的问题是最好的方法是什么。

我看到了以下可能性。

(首选但不确定这是否会导致将来出现合并问题) 将 bugfix 分支重新设置为我的功能分支,当开发更新时,我合并我的功能分支,因为它们是一些提交散列,它应该没有问题地混合。

(似乎可行,但也很麻烦,如果做错了很容易搞砸) 也修复我的功能分支中的代码,以便我可以继续我的单元测试,但是当我提交我的所有单元测试时,不要提交错误修复中的代码。当我的单元测试的 Pull Request 获得批准时,我需要确保首先合并错误修复分支,因为我的功能分支会破坏失败单元测试的构建。

您可以根据 bug fix branch 重新设置 feature branch 的基准,这样您的工作就是 "on top of" 错误修复。

然而,这确实意味着,在错误修复 PR 获得批准并准备好合并之前,您添加单元测试的功能工作无法合并。

如果您的 feature branch 先合并;它会自动带来你的错误修复,无论它是否被批准合并。

如果你的 bug fix branch 先合并;当 feature branch 被合并时,它已经在 master 中提交了错误修复,并且不会再次应用更改。

很多 "what is best" 取决于您的组织如何处理拉取请求、合并和工作之间的依赖关系。