2013-10-24 46 views
7

我想通過Github API(http://developer.github.com/v3/repos/contents/)將文件上傳到GitHub。不知何故,我無法上傳文件。當我嘗試上傳現有文件時,它給了我一條消息「{\」message \「:\」refs/heads/master expected to be at ee1cd720841a4b5b06a8339c333c56b1748e66f9 \「,\」documentation_url \「:\」http://developer.github.com/v3/repos/contents/ \「}」。當我去github並試圖使用網站刪除文件時,它給了我下面的錯誤。我可以將重置頭移至以前的版本並繼續前進。但我試圖瞭解是什麼導致了這種行爲,我怎樣才能在將來避免這種行爲。谷歌和Github幫助都無法回答我,所以從社區尋找一些東西。感謝您的關注。 enter image description hereGITHub API文件上傳問題

+3

您是否偶然使用Repositories API快速連續寫入存儲庫?例如,您是否在先前的調用完成之前通過創建新的API調用來創建多個文件? –

+0

感謝您的答覆伊凡!你的假設是對的。我試圖在部署過程中連續創建多個文件。在旁邊注意,雖然我正在做同步上傳,所以一旦我收到來自GiHub API的響應ok 200 OK我發出另一個創建/更新下一個文件的請求。 – TorontoKid

+1

由於這些順序寫入正在一個接一個地發生,我猜你正在使用API​​處理角落案例。您能否嘗試在您的腳本中加入睡眠,以便在兩次通話之間等待一兩秒鐘?這應該可以解決問題。我們正在努力解決這個問題,但我無法對此解決方案做出任何承諾。讓我知道如果這沒有幫助。 –

回答

4

正如Ivan建議的,如果我們嘗試使用API​​快速連續創建/更新文件,它會導致上述行爲。直到問題得到解決,我們可以通過在兩個請求之間使線程休眠來解決這個問題。我希望它能幫助別人。