如何在GitHub中区分两个分支?

Los*_*ost 53 git github git-branch

我只是想知道是否有办法简单地在GitHub中区分两个分支?我知道GitHub有能力做到这一点,因为当我们进行代码评论时,它会很好地列出所有差异.我只是想知道是否有一种方法可以做到这一点,没有任何代码审查比较说分支到分支或承诺提交?因此,当我将某些内容推送到我的远程分支时,我希望看到我的差异看起来如何在它创建PR之前,那么它可能非常有用.

我总是可以在控制台中进行git diff,但这实际上并不像GitHub的Web UI中显示的那样好看.有任何想法吗?

小智 46

使用比较功能来完成此任务.

  • 这是非常有用的。同时,我不敢相信他们在文档中隐藏了这个美妙的功能,而不是从项目主页提供一个链接。 (8认同)
  • 只需将“/compare”添加到存储库网址的末尾即可! (5认同)
  • 我刚才使用了 <repo>/compare/<branch_name> 并且它有效。 (5认同)
  • 有没有办法通过类似的命令来做到这一点?我尝试了 git Comparebranch_1branch_2,但它不起作用 (2认同)
  • @Bremsstrahlung 是的:`git diff branch_1 branch_2` (2认同)

tka*_*usl 20

如果您在master以外的任何分支上,您应该看到一个比较链接:

比较1

单击它,您应该被重定向到比较工具,您可以在其中选择要比较的分支或提交

比较2


max*_*x_i 8

扩展@Ari M 的回答。网址格式如下:

https://<REPO URL>/compare/<SOURCE BRANCH OR COMMIT>...<TARGET BRANCH OR COMMIT>

请注意和(2 点和 3 点)之间的区别.....

2 点:显示 TARGET 有但 SOURCE 没有的所有提交,以及 SOURCE 有但 TARGET 没有的提交。

3 点:显示 TARGET 有但 SOURCE 没有的所有提交。你通常想要这个。

例如,看看有什么在添加gh-pages分支相比,masterlinguist回购:

https://github.com/octocat/linguist/compare/master...gh-pages