2017-02-12 2 views
0

Ich habe ein kleines Skript geschrieben, um alle Ausgaben auf GitHub-Repos aus meinen persönlichen oder organisatorischen Repos herunterzuladen. Der vollständige Code ist selbst auf github [hier] (https://github.com/joereddington/Vision/blob/master/downloadissues.py)Warum kann ich mit der Github-API auf private Repos zugreifen, aber sie NICHT auflisten?

Ich benutze ein persönliches Zugriffs-Token für die Authentifizierung.

Wenn ich ein eigenes Repository zugreifen (Ich habe ein genannt whitewaterwriters) direkt wie folgt aus:

issues = []  
issues.extend(get_json_from_url('https://api.github.com/repos/equalitytime/whitewaterwriters' + '/issues?state=all&filter=all')) 
    issues = sorted(issues, key=lambda k: k['title']) 
    for issue in issues: 
     print issue['title'] 
     download_comment_to_file(issue['title'], issue['comments_url']) 

Er druckt glücklich alle Fragen aus dem privaten Repo-out.

Allerdings, wenn ich allgemeinere Code verwenden:

repos = [] 
repos = get_json_from_url(MY_REPO_ROOT+'/repos') 
repos.extend(get_json_from_url(EQT_REPO_ROOT+'/repos')) 
issues = [] 
for repo in repos: 
    if repo['has_issues']: 
     issues.extend(get_json_from_url(repo['url'] + '/issues?state=all&filter=all')) 
issues = sorted(issues, key=lambda k: k['title']) 
for issue in issues: 
    print issue['title'] 
    download_comment_to_file(issue['title'], issue['comments_url']) 

... ich alle Inhalte aus meinem öffentlichen Repositories, aber keiner der privaten Repositories sind sichtbar.

Was ist los und wie repariere ich es?

+0

Ist 'MY_REPO_ROOT + '/ repos'' eine gültige URL? was bekommst du in'repos' var? – chinmay

+0

Repos var gibt mir gut geformte Ausgabe, die alle Informationen aobut * public * repos enthält. Ich habe meine Frage bearbeitet, um dies ein wenig klarer zu machen ... – Joe

+0

Haben Sie nach Github-Unterstützung gefragt? – hjpotter92

Antwort

1

Haben Sie versucht nur GET /user/repos?

wie hier erwähnt list your repos

Sieht aus wie GET /users/:username/repos ist nur öffentliche repos zur Liste: list user public repos

+0

Ja, das Bit, das ich nicht verstanden hatte, war, dass/Benutzer/Repos als "Alle Repos für den authentifizierten Benutzer" verstanden werden sollten, während das andere ohne Authentifizierung verwendet werden konnte ... – Joe

Verwandte Themen