为什么Github不自动更新两个PR的文件对比?
Why Github does not automatically update the file comparison between two PRs?
除了main
我创建了三个分支:b-release
、b-A
、b-B
。而 b-A
是基于 release-branch
创建的,而 b-B
是基于 b-A
.
main --- b-release
|
b-A --- b-B
我还创建了三个 PR:
PR-release
(对比main
):这个pr是由PR-b-A
和PR-b-B
组成的changeLog
PR-b-A
(对比b-release
):这个pr是b-A
的变化
PR-b-B
(对比b-release
):这个pr是b-B
的变化
目的是PR-release
合并到main
后b-A
和b-B
合并到b-release
.
但是,在我将PR-b-A
合并到PR-release
之后,PR-b-B
中的文件比较并没有更新。即使我尝试将 base 更改为 main
并更改回 b-release
,它仍然没有更改。
有谁知道如何更新 PR-b-B
上的文件更改?
PR 中显示的差异是:
- 分支机构负责人(
b-B
你的情况)
- 该分支与目标分支之间的分叉点(
b-B
与b-release
之间的分叉点)
如果您仔细观察分支的行为:如果您更新 b-release
分支,分叉点不会改变(见下图)。
如果要更改 PR 中显示的内容,则必须更改分支 b-B
。
例如:运行 git rebase b-release
after b-A
已被合并。之后你将不得不强制推送到原点。
绘制图表:
# before merging b-A :
main --- b-release
\
* --- * --- b-A --- * --- * --- b-B
# after merging b-A :
main --- x --- b-release
\ /
* --- * --- b-A --- * --- * --- b-B
# the fork point with 'b-release' is till commit 'x'
# to update the fork point : change the history of branch b-B
# after 'git rebase b-release' :
main --- x --- b-release
\ / \
* --- * --- b-A * --- * --- b-B
除了main
我创建了三个分支:b-release
、b-A
、b-B
。而 b-A
是基于 release-branch
创建的,而 b-B
是基于 b-A
.
main --- b-release
|
b-A --- b-B
我还创建了三个 PR:
PR-release
(对比main
):这个pr是由PR-b-A
和PR-b-B
组成的changeLog
PR-b-A
(对比b-release
):这个pr是b-A
的变化
PR-b-B
(对比b-release
):这个pr是b-B
的变化
目的是PR-release
合并到main
后b-A
和b-B
合并到b-release
.
但是,在我将PR-b-A
合并到PR-release
之后,PR-b-B
中的文件比较并没有更新。即使我尝试将 base 更改为 main
并更改回 b-release
,它仍然没有更改。
有谁知道如何更新 PR-b-B
上的文件更改?
PR 中显示的差异是:
- 分支机构负责人(
b-B
你的情况) - 该分支与目标分支之间的分叉点(
b-B
与b-release
之间的分叉点)
如果您仔细观察分支的行为:如果您更新 b-release
分支,分叉点不会改变(见下图)。
如果要更改 PR 中显示的内容,则必须更改分支 b-B
。
例如:运行 git rebase b-release
after b-A
已被合并。之后你将不得不强制推送到原点。
绘制图表:
# before merging b-A :
main --- b-release
\
* --- * --- b-A --- * --- * --- b-B
# after merging b-A :
main --- x --- b-release
\ /
* --- * --- b-A --- * --- * --- b-B
# the fork point with 'b-release' is till commit 'x'
# to update the fork point : change the history of branch b-B
# after 'git rebase b-release' :
main --- x --- b-release
\ / \
* --- * --- b-A * --- * --- b-B