codecamp

GitHub 比较提交

您可以在分支、标记、提交和日期之间比较仓库的状态。 要比较仓库的不同版本,请在仓库路径中附加 /compare

我们将通过查看 Linguist 仓库复刻的比较页面来展示比较视图的强大功能,该页面位于 https://github.com/octocat/linguist/compare/master...octocat:master

每个仓库的比较视图包含两个下拉菜单:basecompare

base 应被视为比较的起点,而 compare 被视为终点。 在比较期间,可随时通过单击 Edit(编辑)来更改 basecompare 点。

比较分支

最常用的比较是比较分支,例如在启动新的拉取请求时。 启动新的拉取请求时总是会进入分支比较视图。

要比较分支,您可以从页面顶部的 compare(比较)下拉菜单中选择分支名称。

此处是在两个分支之间进行比较的示例。

比较标记

比较发行版标记将显示自上次发布以来您对仓库的更改。 更多信息请参阅“比较发行版”。

要比较标记,可以从页面顶部的 compare 下拉菜单选择标记名称。

此处是在两个标记之间进行比较的示例。

比较提交

您还可以在 GitHub 上通过两点差异比较来比较仓库或其复刻中的任意两个提交。

要在 GitHub 上通过两点差异比较来快速比较两个提交或直接比较 Git 对象 ID (OID),请编辑仓库“Comparing changes(比较更改)”页面的 URL。

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

有关其他比较选项的更多信息,请参阅“三点和两点差异比较”。

跨复刻比较

您可以比较基础仓库与任何复刻的仓库。 这是用户对项目执行拉取请求时显示的视图。

要比较不同仓库上的分支,请在分支名称前加上用户名。 例如,通过为 base 指定 octocat:master,为 compare 指定 octo-org:master,您可以比较分别由 octocatocto-org 拥有的仓库上的 master 分支。

此处是在两个仓库之间进行比较的示例。

跨提交比较

作为一种快捷方法,Git 使用 ^ 表示法表示“前一次提交”。

您可以使用此表示法对某个提交或分支的现状与前身进行比较。 例如,96d29b7^^^^^ 表示 96d29b7 之前的五次提交,因为有五个 ^ 标记。 在 base 分支中键入 96d29b7^^^^^,并在 compare 分支中键入 96d29b7, 可将 96d29b7 之前的五次提交与 96d29b7 提交进行比较。

以下是使用 ^ 表示法进行比较的示例。

延伸阅读

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; }