Как получить доступ к ленте атомов пользователя Github для получения коммитов из проекта? или альтернатива

Здравствуйте, я новичок в Laravel и программировании в целом.

Я пытаюсь создать приложение, которое отслеживает историю коммитов моих командных проектов на GitHub. Я сейчас, что `git log`, делает это, но идея состоит в том, чтобы поместить это на сервер и получить доступ отовсюду, не выполняя команду вручную (кстати, не знаю, возможно ли это).

Итак, на данный момент для меня решение состоит в том, чтобы прочитать атомную ленту пользователя-участника проекта. Дело в том, что — по очевидным причинам — частные репозитории не доступны напрямую. В документации GitHub говорится, что к ним можно получить доступ с помощью базовой аутентификации, но сейчас я не могу этого сделать. Я пытался протестировать Postman даже при создании Oath2, а также при предоставлении и предоставлении разрешений, но не знаю, почему это не работает.

Кстати, извините за мой английский. Заранее спасибо 🙂

0

Решение

Github предоставляет публичный API для получения пользовательских событий в формате json.

Если вы наберете это в консоли (unix):

curl https://api.github.com/users/sea-reel/events

… вы получаете список моих последних публичных коммитов.

Для реализации этого с Laravel вы можете просто использовать file_get_contents () :

Route::get('/commits/{username}', function($username)
{
$url = "https://username:password@api.github.com/users/{$username}/events";
$json = json_decode(file_get_contents($url),true);

dd($json);
});

Чтобы также получить доступ к коммитам из частных репозиториев, вы можете использовать один из различные методы аутентификации, предоставляемые API Github. Здесь я использовал базовую аутентификацию, но вы можете найти более безопасный способ использовать OAuth и хранить секретные ключи вместо необработанных паролей.

0

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

Других решений пока нет …