过时的公关差异

zor*_*119 5 git github

我遇到过这样的情况:PR 差异(从功能分支到主分支)与通过比较同一功能分支和主分支生成的差异不同。

我唯一能想到的是,GitHub 在创建时“冻结”了 PR diff,然后随着 master 的移动(其他功能分支被合并),该 diff 就会“过时”。

GitHub 会“冻结”PR 差异吗?如果是这样,有什么办法可以“刷新”它吗?还是有不同的原因导致差异不同?

Obs*_*Age 1

本质上是的;Git 将在创建 PR 时冻结 PR 的差异。master如果在您创建 PR 后合并了其他内容,则这些head部分将会有所不同,因此diff也会有所不同。

为了仅查看您的更改(而不是master同时进行的更改),您可以使用三点语法:

git diff develop...master
Run Code Online (Sandbox Code Playgroud)

这本质上会向您显示这两个分支的“合并基础”(最后一个共同提交):

在此输入图像描述

如果合并拉取请求后需要在同一分支上进行其他工作,您仍然可以在该功能分支上创建后续提交,然后创建第二个取请求。这与为第二次提交创建独立的功能分支具有相同的效果,尽管这对于跟踪相关工作很有用。请注意,后续的拉取请求将携带两次提交的更改;它包含所有第一次提交以及之后所做的任何更改。因此,选择合并两个拉取请求或仅合并后者没有区别。