要比较存储库的不同版本,请将 /compare
附加到存储库的路径。
我们将通过查看 Linguist 存储库的分叉 的比较页面来展示比较功能的强大之处,该页面位于 https://github.com/octocat/linguist/compare/master...octocat:master。
每个存储库的比较视图包含两个下拉菜单:base
和 compare
。
base
应被视为比较的起点,compare
是终点。在比较过程中,您始终可以通过单击编辑来更改 base
和 compare
点。
比较分支
比较最常见的使用是比较分支,例如在您开始新的合并请求时。在开始 新的合并请求 时,您将始终进入分支比较视图。
要比较分支,您可以从页面顶部的 compare
下拉菜单中选择一个分支名称。
以下是一个 两个分支之间的比较 示例。
比较标签
比较发行标签将向您显示自上次发行以来存储库的更改。有关更多信息,请参阅“比较发行版”。
要比较标签,您可以从页面顶部的 compare
下拉菜单中选择一个标签名称。
以下是一个两个标签之间的比较示例。
注意:如果分支和标签具有相同名称,则比较提交时将使用分支。可以通过向标签名称添加 tags/
来专门比较标签。
比较提交
你还可以通过两点差异比较在 GitHub 上比较存储库或其分支中的两个任意提交。
要在 GitHub 上直接使用两点差异比较快速比较两个提交或 Git 对象 ID (OID),请编辑存储库的“比较更改”页面的 URL。
例如,此 URL 使用缩短的 SHA 代码比较提交 f75c570
和 3391dcc
:https://github.com/github-linguist/linguist/compare/f75c570..3391dcc
。
要了解有关其他比较选项的更多信息,请参阅“关于在 Pull Request 中比较分支”。
跨分支比较
你可以比较你的基础存储库和任何分支存储库。这是用户对项目执行 Pull Request 时显示的视图。
要比较不同存储库上的分支,请在分支名称前加上用户名。例如,通过为 base
指定 octocat:main
,为 compare
指定 octo-org:main
,你可以分别比较 octocat
和 octo-org
拥有的存储库的 main
分支。
以下是一个两个存储库之间的比较示例。
跨提交比较
你可以使用两种类型的符号将 Git 中的单个提交与提交的前身进行比较。
符号 | 含义 | 示例 | 比较 |
---|---|---|---|
^ | 之前的提交。重复 ^ 字符以指示历史记录中更早的一个提交。 | 96d29b7^^^^^ 表示 96d29b7 之前的五个提交。 | 查看比较 |
~N | 之前的 N 个提交。 | 96d29b7~5 表示 96d29b7 之前的五个提交。 | 查看比较 |