2013-04-10 16 views
13

特定のgithubプロジェクトに対して実行されたコミットの数を特定ファイル内で特定したいと思います。私はgithub api docsをチェックしましたが、実際にすべてのコミットを返すためのAPIしか見つかりませんでした。これは、すべてのコミットを通じたページングのために複数のAPIコールを行う必要があるので、非常に非効率的です。github api:リポジトリのコミット数を効率的に見つける方法は?

誰でも良いアイデアがありますか?

+0

は私の更新の答えを参照してください。 – VonC

+0

@drorwこんにちは、アクセストークンの統合方法を教えてください。 – user6456773

答えて

9

アップデート2013年5月:あなたができるようになりましたGet the last year of commit activity data

GET /repos/:owner/:repo/stats/commit_activity 

は、週ごとにグループ化されコミット活動の最後の年を返します "File CRUD and repository statistics now available in the API"

を参照してください。日配列は、日曜日から始まるコミットのグループです。

いいえ完全にあなたが探しているものですが、近いものです。


オリジナルの答え(2010年4月)

いいえ、現在のAPIは、すべての支店からすべてのcommmitsを一覧表示するために 'log --all' をサポートしていません。

唯一の選択肢は、「Github API: Retrieve all commits for all branches for a repo」で提示され、すべてのコミットのすべてのページを一覧表示し、枝後ブランチれます。

これは実際には別の代替品よりも厄介なようですクローン Githubレポとapply git commands on that local clone
GraphQL API v4と(主にgit shortlog

+0

答えをいただきありがとうございます。APIがいつか改善されることを願っています。 – drorw

+2

@drorw APIに関する特定の提案や機能要求がある場合は、GitHubサポートに電子メールでご連絡ください。https://github.com/contact –

+0

更新ありがとうございました。 – drorw

1

、あなたは各ブランチのためtotalCountでブランチあたりの総コミット数を取得することができます:

{ 
    repository(owner: "google", name: "gson") { 
    name 
    refs(first: 100, refPrefix: "refs/heads/") { 
     edges { 
     node { 
      name 
      target { 
      ... on Commit { 
       id 
       history(first: 0) { 
       totalCount 
       } 
      } 
      } 
     } 
     } 
    } 
    } 
} 

Test it in the explorer

関連する問題