Как получить последнюю дату фиксации — Github API

В настоящее время я пишу небольшую базу данных git-повторов, и мне интересно, как я смогу получить дату последнего коммита, если у меня есть повтор в списке в моей базе данных.

Я никогда не работал с github API, и мне было немного трудно обдумать его.

Если бы кто-нибудь мог помочь мне понять это, я был бы очень признателен. PHP или JS предпочтительно, так как все примеры, которые я нашел, были в ruby.

2

Решение

Если бы вы использовали PHP как ваш пример, Я бы использовал cURL вместо file_get_contents, как вам нужно настроить -разрешение URL-Еореп.

GitHub также требует, чтобы вы отправили user-agent в шапке: https://developer.github.com/v3/#user-agent-required

Например, ваш код PHP будет выглядеть так:

$objCurl = curl_init();

//The repo we want to get
curl_setopt($objCurl, CURLOPT_URL, "https://api.github.com/repos/google/blueprint/commits");

//To comply with https://developer.github.com/v3/#user-agent-required
curl_setopt($objCurl, CURLOPT_USERAGENT, "StackOverflow-29845346");

//Skip verification (kinda insecure)
curl_setopt($objCurl, CURLOPT_SSL_VERIFYPEER, false);

//Get the response
$response = curl_exec($objCurl);
print_r( json_decode($response, true) );

Замечания: Вы сможете продолжить использовать file_get_contents и отправить user-agent заголовок. Увидеть этот ответ

3

Другие решения

Старый вопрос, но я хотел бы отметить (по крайней мере, с API v3), вы можете использовать API ветвей, чтобы получить последнюю дату фиксации для конкретной ветви. Я полагаю, в вашем случае вы заинтересованы в мастере.

Который будет выглядеть так:

https://api.github.com/repos/:owner/:repo/branches/master

Увидеть https://developer.github.com/v3/repos/branches/

3

По вопросам рекламы [email protected]