Merged a Pull request 一次合并了多个分支

Merged a Pull request merged multiple branches at once

昨天我合并了另一个开发人员完成的分支的 1 个拉取请求,我在他休假时将其替换为 Master,该分支中的代码更改经过了代码审查和彻底测试。

突然间他 CI 报告了这么多错误,与合并到该拉取请求中的那个分支所做的更改完全无关,所以我们假设这是其他原因(最近我们遇到了问题用我们的 CI,因为是重组 CI) 的计划。

今天早上我被两个不同的开发人员大喊大叫,要求我解释为什么我在他们没有完成的情况下合并他们的分支。

我不知道这怎么可能。在一个 Pull Request 中,您将不同的分支合并到生成 Pull Request 的分支?

有人可以解释一下这是否可能,为什么以及如何......

我们遇到过这种情况,开发人员基于 branch A 创建了 branch B,但尚未合并。接受 branch B 的合并也接受 branch A直到创建 branch B 的提交。

拉取请求将包含 branch B 中的所有更改,但不一定包含 branch A 中的所有更改。这可以引入 broken/incomplete 变化。

我希望以下内容有助于解释我的意思:

*
|\
| \
|  \
|   \
|    \
|     * commit to branch A
|     |
|     * commit to branch A
|    /|
|   / | 
|  *  | commit to branch B
|  |  |
|  |  * commit to branch A
|  |  
|  * commit to branch B
| /   
|/    
* merge branch B in to master (first two commits from branch A are included)