注:在创建拉取请求时,您可以更改用于比较更改的基本分支。 更多信息请参阅“创建拉取请求”。
您可以在 Files changed(更改的文件)选项卡的拉取请求中查看提议的更改。
� 需查看提交本身,您可以查看提议的更改,� 为它们在拉取请求合并后就会出现在文件中。 这些文件在 Files changed(更改的文件)选项卡中按字母数字顺序显示。 添� 的文件以绿色显示,前缀 +
号,而� 除的内容以红色显示,前缀 -
号。
差异视图选项
提示:如果难以理解更改的上下文,可以在 Files changed(更改的文件)选项卡中单击 View(查看)以查看包含提议的更改的整个文件。
用于查看差异的选项有多个:
- 统一视图以线性视图同时显示更新的内容和原有内容。
- 拆分视图在一边显示旧内容,另一边显示新内容。
- 多差异视图显示拉取请求合并后更改的预览效果。
- 来源视图显示来源中的更改,但没有多差异视图的� �式。
您也可以选择忽略空� �更改以获取拉取请求中实质性更改的更准确视图。
为简化审查大型拉取请求中的更改,您可以过滤差异,只显示所选的文件类型、显示您是其代� �所有者的文件、隐藏您查看过的文件或隐藏已� 除的文件。 更多信息请参阅“按文件类型过滤拉取请求中的文件”。
差异不显示的原�
- 您超过了文件或特定文件类型的总限制。 更多信息请参阅“关于仓库”。
- 您的文件与仓库的 .gitattributes 文件中的规则匹配,默认会阻止该文件显示。 更多信息请参阅“自定义更改的文件在 GitHub 中如何显示”。
三点和两点 Git 差异比较
git diff
命令有两种比较方法:两点 (git diff A..B
) 和三点 (git diff A...B
)。 默认情况下,GitHub 上的拉取请求显示三点差异。
三点 Git 差异比较
三点比较显示了两个分支(合并基数)的最新公共提交与主题分支的最新版本之间的差异。
两点 Git 差异比较
两点比较显示了基本分支的最新状态(例如 main
)和主题分支的最新版本之间的差异。
要在 GitHub 上查看两点差异比较中的两个 committish 参考,可以编辑仓库的“比较更改”页面的 URL。 更多信息请参阅 Pro Git 书籍网站中的 "committish" 的 Git 词汇。
例如,此 URL 使用简短的 7 字符 SHA 代� �比较提交 c3a414e
与 faf7c6f
:https://github.com/github/linguist/compare/c3a414e..faf7c6f
。
两点差异直接互相比较两个 Git committish 参考,如 SHA 或 OID(对象 ID)。 在 GitHub 上,两点差异比较中的 Git committish 参考必须推送到同一仓库或其复刻。
如果要模拟拉取请求中的两点差异并查看每个分支最新版本之间的比较结果,可以将基本分支合并到主题分支,以更新分支之间最新的共同原型。
有关用于比较更改的 Git 命令的更多信息,请参阅 Pro Git 书籍网站中的“Git 差异选项”。
关于 GitHub 上的三点比较
由于三点比较与合并基础进行比较,� 此它侧重于“拉取请求引入的内容”。
使用两点比较时,即使尚未对主题分支进行任何更改,差异也会在基本分支更新时更改。 此外,两点比较侧重于基本分支。 这意味着您添� 的任何内容都会从基本分支中显示为缺失,就好像它是� 除一� �,反之亦然。 � 此,主题分支引入的更改变得模棱两可。
相反,通过使用三点比较来比较分支,如果更新了基本分支,则主题分支中的更改始终位于差异中,� 为差异显示了自分支发散以来的所有更改。
经常合并
为避免混淆,请经常将基本分支(例如 main
)合并到主题分支中。 通过合并基本分支,两点和三点比较显示的差异是相同的。 我们建议尽快合并拉取请求。 这会鼓励贡献者减小拉取请求,一般建议这� �做。