2017-03-15 4 views
0

内部Reposからコミット情報を取得するGitHubアプリケーションを構築しています。 []は常にあるgithub3.pyを使用して特定のユーザーのすべてのrepos /コミットを一覧表示するための推奨された方法

gh = login(token=gc.ACCESS_TOKEN) 
for repo in gh.iter_repos(): 
    for commit in repo.iter_commits(): 
     print(commit.__dict__) 
     print(commit.additions) 
     print(commit.author) 
     print(commit.commit) 
     print(commit.committer) 
     print(commit.deletions) 
     print(commit.files) 
     print(commit.total) 

の追加/削除/合計値は、すべての0として戻って来ている、とのファイル属性:私はすべてのコミットを反復処理するには、次のコードを使用しています。私がURLをクリックすると、これは当てはまりません。私はcurl呼び出しによって、APIが実際にこれらの属性を記録していることを確認しました。

iter_commitsには、iter_user_commitsが推奨されています。コミットに関するすべての情報が返されないのはなぜですか? 、私はお勧めの方法は、ユーザがアクセス権を持つすべてのリポジトリのすべてのコミットを得るためには何か思ったんだけど要するに

gh = login(token=gc.ACCESS_TOKEN) 
user = gh.user() 
for repo in gh.iter_user_repos(user): 

:しかし、この方法では、私はこのようにそれを使用するときに私のための任意のリポジトリを返しません。 。

答えて

1

iter_reposと入力したGitHubのインスタンスに間違いがありません。

ここでは何が起こっているのですか(github3.pyのドキュメントに記載されています):GitHubのAPIからリソースをリストするとき、実際にすべての属性が返されるわけではありません。すべての情報が必要な場合は、コミットごとに情報を要求する必要があります。つまり、あなたのコードは次のようになります:

+0

ああ、 'refresh'メソッドがありません。ありがとう! – flybonzai

関連する問題