在GitHub上比较同一分支上的历史对我来说非常困惑。我经常与此斗争:
如果我在github repo名称之后的URL中使用compare/master
,我可以根据下拉菜单中的选项与repo中的其他分支进行比较
https://help.github.com/articles/comparing-commits-across-time/
但是,我通常想比较master上的几个提交。
这怎么容易做到?我能得到一个更明确的例子吗?
答案 0 :(得分:22)
您可以使用以下URL结构来比较同一分支中的提交:
n rm 9.10.1
替换github.com/<username>/<repo_name>/compare/<commit1>...<commit2>
,username
,repo_name
&amp;的值commit1
acc。到你的项目。
两次提交之间的分隔符是commit2
,即(3点)
答案 1 :(得分:2)
您关联的文章包含comparing commits的说明。
Github比较工具将接受任何revision。分支,标签,提交ID,甚至日期。如果要在两个提交之间进行比较,请为其提供提交ID。 Here's their example
答案 2 :(得分:1)
答案 3 :(得分:1)
自定义标签。
偷看,我们可以在存储库中添加一个比较“自定义选项卡”,以便我们可以快速访问这个比较工具。
这是方法。
现在转到您的存储库登录页面,您现在应该会在其他默认选项卡(拉取请求、设置等)旁边看到您新创建的自定义选项卡
答案 4 :(得分:0)
您可以使用Github Compare UI,它将为您生成URL。将ORG
和REPO
替换为您的值。用户界面仅列出分支,但您也可以输入任何有效的标记(例如v1.0.0
)或提交ID(例如1a2b3c
)。
https://github.com/ORG/REPO/compare/
生成的URL就是这种格式。您也可以使用REF手动编辑URL。
https://github.com/ORG/REPO/compare/REF1...REF2
您也可以使用“ 2点”(直接差异)代替“ 3点”(与上次常见提交的差异)。与git diff A..B
vs git diff A...B
相同。
https://github.com/ORG/REPO/compare/REF1..REF2
如果要在各个分支之间进行比较,则需要添加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
答案 5 :(得分:0)
(如果未提出拉取请求,则分支)
bug/39
和master
之间的区别)注意:
(如果发出了拉取请求,您就可以通过比较URL看到PR内的更改)
处理订单,例如。 https://github.com/PyCQA/mccabe/compare/master...0.6.1将不会给出结果
您可以选择2点(..)或3点(...)表示法
答案 6 :(得分:0)
如果您需要比较一个分支内但不同日期的更改,您可以这样做:
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}