¿Cómo recuperar el historial de commit de git para un período de time específico con cURL?

Estoy tratando de recuperar el historial de commits como JSON y salir en un file txt.

curl https://api.github.com/repos/username/repo/commits > commitHistory.txt 

Con el comentario de curl anterior, solo obtengo la primera página del historial de confirmaciones. Me gustaría recuperar el historial de confirmación completo o establecer un intervalo de dates al hacerlo. ¿Cómo debería hacerlo?

Puede usar since y until parameters para get confirmaciones solo por un período de time específico:

 curl https://api.github.com/repos/username/repo/commits?since=2016-11-01T00:00:00Z&until=2016-11-01T23:59:59Z 

Para más detalles: ver api doc .

Las requestes API de GitHub se paginan automáticamente para sets de resultados grandes, por lo que deberá inspeccionar el encabezado Link: y realizar más requestes mientras haya más resultados. La documentation API ofrece más información:

Las requestes que devuelven múltiples elementos se paginan a 30 elementos de forma pnetworkingeterminada. Puede especificar más páginas con el parámetro ?page . Para algunos resources, también puede establecer un tamaño de página personalizado hasta 100 con el parámetro ?per_page . Tenga en count que, por razones técnicas, no todos los puntos finales respetan el parámetro ?per_page , consulte los events, por ejemplo.

curl 'https://api.github.com/user/repos?page=2&per_page=100'

Tenga en count que la numeración de páginas está basada en 1 y que al omitir el parámetro? Page se devolverá la primera página.

Para get más información sobre la pagination, consulte nuestra guía sobre Atravesar con pagination.

También puedes hacer esto usando una biblioteca de Python como github3.py (o equivalente), que manejará la pagination por ti.

En términos de un range de dates específico, la respuesta de philipjkim es correcta: use los parameters since y until .