Il modo corretto per farlo è tramite il Events API.
Prima di tutto bisogna fetch the user's events:
GET /users/:username/events
poi si vuole filtrare la matrice di risposta per gli elementi where type
is set to PushEvent
. Ognuno di questi articoli corrisponde ad un git push
dall'utente. I commit da quella pressione sono disponibili in ordine cronologico inverso nell'array payload.commits
.
Il passaggio successivo consiste nel filtrare i commit effettuati da altri utenti controllando la proprietà author.email
di ciascun oggetto di commit. È inoltre possibile accedere a proprietà come sha
, message
e url
sullo stesso oggetto ed è possibile eliminare i commit duplicati su più push utilizzando la proprietà distinct
.
MODIFICA: Come indicato da Adam Taylor nei commenti, questo approccio è errato. Non sono riuscito a RTFM, mi dispiace. L'API ti consente di recuperare al massimo 300 eventi ed eventi sono anche limitati agli ultimi 90 giorni. Lascerò qui la risposta per completezza ma per la domanda dichiarata di recupero di tutte le commit, non funzionerà.
fonte
2016-07-08 19:56:39
Questo non è per ** tutti ** i contributi. Mostra solo tutto quest'anno per me, non dal 2011. –