codecamp

GitHub 关于比较拉取请求中的分支

拉取请求会显示差异,用于比较您在主题分支中的更改与您要合并更改的基本分支。

注:在创建拉取请求时,您可以更改用于比较更改的基本分支。 更多信息请参阅“创建拉取请求”。

您可以在 Files changed(更改的文件)选项卡的拉取请求中查看提议的更改。

拉取请求文件已更改选项卡

无需查看提交本身,您可以查看提议的更改,因为它们在拉取请求合并后就会出现在文件中。 这些文件在 Files changed(更改的文件)选项卡中按字母数字顺序显示。 添加的文件以绿色显示,前缀 + 号,而删除的内容以红色显示,前缀 - 号。

差异视图选项

提示:如果难以理解更改的上下文,可以在 Files changed(更改的文件)选项卡中单击 View(查看)以查看包含提议的更改的整个文件。

用于查看差异的选项有多个:

  • 统一视图以线性视图同时显示更新的内容和原有内容。
  • 拆分视图在一边显示旧内容,另一边显示新内容。
  • 多差异视图显示拉取请求合并后更改的预览效果。
  • 来源视图显示来源中的更改,但没有多差异视图的格式。

您也可以选择忽略空格更改以获取拉取请求中实质性更改的更准确视图。

差异查看选项菜单

为简化审查大型拉取请求中的更改,您可以过滤差异,只显示所选的文件类型、显示您是其代码所有者的文件、隐藏您查看过的文件或隐藏已删除的文件。 更多信息请参阅“按文件类型过滤拉取请求中的文件”。

文件过滤器下拉菜单

三点和两点 Git 差异比较

默认情况下,GitHub 上的拉取请求显示三点差异,或者比较主题分支的最近版本与其中使用基本分支最新同步主题分支的提交。

要在 GitHub 上查看两点差异比较中的两个 committish 参考,可以编辑仓库的“比较更改”页面的 URL。 更多信息请参阅 Pro Git 书籍网站中的 "committish" 的 Git 词汇

例如,此 URL 使用简短的 7 字符 SHA 代码比较提交 c3a414efaf7c6fhttps://github.com/github/linguist/compare/c3a414e..faf7c6f

两点差异直接互相比较两个 Git committish 参考,如 SHA 或 OID(对象 ID)。 在 GitHub 上,两点差异比较中的 Git committish 参考必须推送到同一仓库或其复刻。

如果要模拟拉取请求中的两点差异并查看每个分支最新版本之间的比较结果,可以将基本分支合并到主题分支,以更新分支之间最新的共同原型。

有关用于比较更改的 Git 命令的更多信息,请参阅 Pro Git 书籍网站中的“Git 差异选项”。

差异不显示的原因

延伸阅读

GitHub 关于拉取请求
GitHub 创建拉取请求
温馨提示
下载编程狮App,免费阅读超1000+编程语言教程
取消
确定
目录

GitHub 身份验证

在 GitHub 上管理订阅和通知

在 GitHub 上管理活动的订阅

GitHub 组织和团队

GitHub 管理对组织仓库的 Git 访问

GitHub 计费和付款

GitHub 使用议题和拉取请求进行协作

GitHub 在具有代码质量功能的仓库上进行协作

管理在 GitHub 上的工作

GitHub 建立强大的社区

GitHub 管理仓库

GitHub 自定义 GitHub 工作流程

在 GitHub Marketplace 中购买并安装应用程序

通过 GitHub Jobs 寻找人才

关闭

MIP.setData({ 'pageTheme' : getCookie('pageTheme') || {'day':true, 'night':false}, 'pageFontSize' : getCookie('pageFontSize') || 20 }); MIP.watch('pageTheme', function(newValue){ setCookie('pageTheme', JSON.stringify(newValue)) }); MIP.watch('pageFontSize', function(newValue){ setCookie('pageFontSize', newValue) }); function setCookie(name, value){ var days = 1; var exp = new Date(); exp.setTime(exp.getTime() + days*24*60*60*1000); document.cookie = name + '=' + value + ';expires=' + exp.toUTCString(); } function getCookie(name){ var reg = new RegExp('(^| )' + name + '=([^;]*)(;|$)'); return document.cookie.match(reg) ? JSON.parse(document.cookie.match(reg)[2]) : null; }