我想比较一个GitHub存储库的两个分支的“只是文件”。当我使用在线比较视图时,它仍然显示一些差异,即使文件是相同的。
据我了解,git
CLI命令会为此功能提供--no-index
选项。因此,我可以将两个分支克隆到我的本地文件系统,并将它们与git diff --no-index
进行比较。如何在不首先克隆它们的情况下实现这一目标?我想在GitHub上在线查看差异。
示例:
即使README.md
https://github.com/emmi474/testgithubgitdiff/compare/duplicate和master
https://github.com/emmi474/testgithubgitdiff/blob/master/README.md分支中的duplicate
文件相同,差异仍显示差异https://github.com/emmi474/testgithubgitdiff/blob/duplicate/README.md。
更新
我不认为该问题与--no-index
选项有任何关系。如果我跑
git clone https://github.com/emmi474/testgithubgitdiff.git
cd testgithubgitdiff
git checkout duplicate
然后git diff master..duplicate
(两个点)不会显示差异,git diff master...duplicate
(三个点)将显示与GitHub在线比较相同。
因此,似乎这个问题已经有了答案:Github Comparison View for 2 branches is incorrect?
简而言之:GitHub的比较视图始终使用git diff
三个点。有关两点和三点之间差异的更多信息也在https://git-scm.com/docs/git-diff
答案 0 :(得分:1)
因为它是一个GitHub存储库:
https://github.com/{USER_OR_ORG}/{REPOSITORY}/compare/{BRANCH_1}...{BRANCH_2}.patch
(您可以删除'.patch'以查看GitHub UI中的差异)
答案 1 :(得分:1)
现在(2018年9月)受支持。
参见“ Dos dots, the two dot commit comparison”
这可以在两个提交之间进行直接的“两个点”比较。
现在,您可以轻松地看到两个提交之间的差异,而无需像三点比较那样将它们与常见的合并基础提交进行比较。
请参阅“ Three-dot and two-dot Git diff comparisons”。
例如: