GitHub:如何在开放的PR中更新代码差异?

3

Git分支历史记录

我创建了A、B、C三个分支。B包含A的所有更改,C包含B的所有更改。

然后我单独为它们创建了PR。

PR1包含:A的更改 PR2包含:A和B的更改

然后我提交了PR1。

我期望会发生以下情况: PR2(和3)将更新它们的代码差异。 --> PR2仅包含B的更改(不再包含A的更改)

尽管这些更改已经存在于主分支上,但PR2仍然显示了所有A的更改。GitHub已经允许通过提交到该分支来更改开放的PR,但在这种情况下显然没有更新历史记录。

是否有像“更新”按钮之类的东西可以反映这些更改?由于合并导致显示虚假的代码差异,这使得审核PR变得更加困难。


2
公共关系应该自动更新。如果这不起作用,可以尝试将目标分支更改为其他内容,然后再更改回“main”。 - EmilioPelaez
5
你是否在合并分支时使用了压缩合并或者重写历史记录的 rebase 等操作?那么针对该分支会创建一个新的修订版本(如果使用了 rebase,则可能会有多个),而该版本与后续分支所使用的基础代码不同,因此无法通过 diff 命令进行比较。 - eftshift0
@EmilioPelaez 这手动触发了更新,正是我想要的。请将评论更改为答案,我很乐意接受它。 - riggedCoinflip
请注意,拉取请求本身并不是 Git 的一部分:任何有关 PR 的管理都由提供/托管 PR 的系统(在这种情况下为 GitHub)负责。(这不是答案,只是一个评论,帮助集中精力查找问题及其解决方案的位置。) - torek
1个回答

1

PR应该自动更新。如果没有自动更新,请尝试将目标分支更改为其他分支,然后再更改回主分支。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接