在 GitHub 上比较同一个分支的历史对我来说非常困惑,我经常为此而挣扎:
如果我在 GitHub 回购名称后面的 URL 中使用 compare/master,我可以根据下拉菜单中的选项与回购中的其他分支进行比较。
compare/master
Https://help.github.com/en/articles/comparing-commits-across-time
但是,我通常想比较几个提交在 master 上。
这是怎么容易做到的? 我可以得到一个更清楚的例子吗?
您链接的文章有关于 比较提交的说明。
GitHub 比较工具将接受任何 修订。分支,标记,提交 ID,甚至日期。如果要比较两次提交,请给它提交 ID。这是他们的例子.
您可以使用以下 URL 结构来比较同一分支中的提交:
github.com/<username>/<repo_name>/compare/<commit1>...<commit2>
将 username、 repo_name、 commit1(old commit)和 commit2(new commit)的值替换到您的项目。
username
repo_name
commit1(old commit)
commit2(new commit)
两次提交之间的分隔符是 ...,即 3 dots。
...
3 dots
TLDR : 只需在 URL 的末尾添加 /compare即可。
/compare
您可以使用 GithubCompareUI,它将为您生成 URL。用值替换 ORG和 REPO。UI 只列出分支,但是您也可以输入任何有效的标记(例如 v1.0.0)或提交 ID (例如 1a2b3c)。
ORG
REPO
v1.0.0
1a2b3c
Https://github.com/org/repo/compare/
生成的 URL 采用这种格式。您也可以使用 REF 手动编辑 URL。
Https://github.com/org/repo/compare/ref1...ref2
您也可以使用“2点”(直接差异) ,而不是“3点”(差异从最后一次常见提交)。
Https://github.com/org/repo/compare/ref1..ref2
如果要跨叉比较,则需要添加 ORG2:
ORG2:
Https://github.com/org/repo/compare/ref1...org2:ref2
有文件,但我不认为它是那么清楚: https://help.github.com/en/github/committing-changes-to-your-project/comparing-commits-across-time
(如果没有发出请求,则分支)
bug/39
master
备注:
(如果一个拉请求已经发出,你可以看到公关内部的变化,不再通过比较网址)
您可以使用下拉列表选择不同的分支或标签:
处理好这个订单,例如 https://github.com/PyCQA/mccabe/compare/master...0.6.1不会给出结果
你可以选择2-点(. .)或3-点(. .)符号
Https://github.com/pycqa/mccabe/compare/55942cb...head
Https://github.com/pycqa/mccabe/compare/55942cb...e92e9e7
只要转到 https://github.com/USERNAME/REPOSITORY_NAME/compare就可以得到比较页面
https://github.com/USERNAME/REPOSITORY_NAME/compare
自定义标签。
看,我们可以向存储库添加一个比较“自定义选项卡”,这样我们就可以快速访问这个比较工具。
这就是方法。
现在转到你的回购登陆页面,你现在应该看到你新创建的自定义选项卡与其他默认选项卡(拉请求,设置等)
如果您需要比较一个分支内不同日期的更改,您可以这样做:
https://github.com/<ORG_NAME>/<REPO_NAME>/compare/HEAD..HEAD@{4 weeks ago} https://github.com/<ORG_NAME>/<REPO_NAME>/compare/HEAD@{1 week ago}..HEAD@{2021-06-01}