2017-05-05 81 views
0

你好,我是Laravel和編程一般新的。如何訪問Github用戶的atom feed以獲取項目提交?或替代

我試圖做一個應用程序,跟蹤我的團隊項目在GitHub上的提交歷史記錄。我現在說'git log'可以做到這一點,但想法是把它放在服務器上並從任何地方訪問,而無需手動執行命令(不知道這是否可以順便說一下)。

所以,目前,我的解決方案是讀取項目的用戶成員的原子飼料。事情就是 - 由於顯而易見的原因 - 私人回購不直接存取。 GitHub文檔說他們可以通過基本的身份驗證訪問,但是在我無法做到的情況下。我試過在郵遞員測試中,即使是Oath2創建和應用程序,並承認權限,但不要爲什麼它不起作用。

順便說一句,對不起,我的英語。在此先感謝:)

+0

也許一些幫助http://stackoverflow.com/questions/7353538/setting-up-an-github-commit-rss-feed?rq=1 –

回答

0

Github provides a public 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:[email protected]/users/{$username}/events"; 
    $json = json_decode(file_get_contents($url),true); 

    dd($json); 
}); 

要還訪問從私人回購承諾,你可以使用various authentication methods provided by Github's API之一。這裏我使用了基本認證,但是您可能會發現使用OAuth和存儲密鑰而不是原始密碼更安全。