要比较仓库的不同版本,请将/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
。
要了解其他比较选项,请参阅“关于在拉取请求中比较分支”。
跨分支比较
您可以比较您的基础仓库和任何分支仓库。当用户向项目发出拉取请求时,就会显示此视图。
要比较不同仓库上的分支,请在分支名称前加上用户名。例如,通过为base
指定octocat:main
,为compare
指定octo-org:main
,您可以分别比较octocat
和octo-org
拥有的仓库的main
分支。
您也可以在分支名称前加上用户名和仓库名称。例如,指定octocat:awesome-app:main
将使用octocat/awesome-app
仓库中的main
分支。这在大型组织中可能很有用,因为您可能拥有一个上游仓库和一个由组织拥有的分支。更多信息,请参阅“关于分支”。
这是一个两个仓库之间比较的示例。
跨提交比较
您可以使用两种类型的表示法来比较 Git 中的单个提交与其之前的提交。
表示法 | 含义 | 示例 | 比较 |
---|---|---|---|
^ | 之前的一个提交。重复^ 字符以指示历史记录中更靠前的另一个提交。 | 96d29b7^^^^^ 表示 96d29b7 之前五个提交。 | 查看比较 |
~N | 之前的 N 个提交。 | 96d29b7~5 表示 96d29b7 之前五个提交。 | 查看比较 |