在github.com

时间:2019-11-28 09:17:51

标签: git github git-branch git-commit

我想知道github.com存储库中哪些分支包含特定提交。假设我需要列出所有包含commit的分支。我知道以下几种方法:

  1. 转到每个分支,查看最后的提交日期,并将其与提交的日期进行比较。如果有多个分支和标签,这是不可行的。
  2. 检出github仓库并执行git branch --contains <commit>(相关SO question)。我宁愿不签出仓库,因为我每天需要浏览大量的仓库。

这两种方式都很耗时。 有更好的方法吗?

1 个答案:

答案 0 :(得分:0)

GitHub没有提供在API中执行此操作的方法,因此您需要克隆存储库并自己完成,就像在第二个建议的解决方案中一样。您的第一种技术在一般情况下无效,因为它不会指示该提交是否在给定的分支中,而仅指示给定的分支是否比给定的提交新。

请注意,可以通过GitHub API缓慢地爬行历史记录,但是它的速度足够慢,以至于克隆速度更快,并且在完成任务之前,您将受到速率的限制,这将进一步阻碍您的进度。