2012-05-28 91 views
6

我正在使用v3 API並設法列出repos/trees/branches,訪問文件內容以及創建blob/trees/commitits。我現在試圖創建一個新的回購,並設法做到「POST用戶/回購」GitHub v3 API - 如何在存儲庫中創建初始提交?

但是當我嘗試在這個新的回購中創建blob /樹/提交/引用我得到相同的錯誤信息。 (409)「Git存儲庫是空的。」很明顯,我可以通過git命令行自己啓動存儲庫,但是寧願喜歡我的應用程序是否爲我做。

有沒有辦法做到這一點?我創建一個空的存儲庫後,通過API需要做的第一件事是什麼?

感謝

+2

看起來他們還不支持它,http://stackoverflow.com/questions/9670604/github-v3-api-how-to-create-initial-commit-for-my-shiny-new -repository – aclark

回答

1

更新2013年5月:注意repository content API現授權adding files

請參閱「File CRUD and repository statistics now available in the API」。


原來的答覆(2012年5月)

因爲它不似乎尚不支持( 「GitHub v3 API: How to create initial commit for my shiny new repository?」,爲aclark評論),您可以通過按下啓動初始提交

git commit --allow-empty -m 'Initial commit' 
git push origin master 

無論如何,這可能是一個良好的做法,initialize one's repository
並在「git's semi-secret empty tree」中進行了說明。

+0

謝謝。真的很奇怪,API將支持創建回購,但不啓動它們。 –

2

自2012年以來,它現在可以自動創建初始化後庫,根據對GitHub的博客上發表this blog post

今天,我們可以更容易通過GitHub的提交添加到資料庫API。到目前爲止,您可以創建一個存儲庫,但是在通過API添加任何提交之前,您需要通過Git客戶端在本地初始化它。

現在,你可以選擇一個初始化倉庫時,它通過爲auto_init參數發送真正的創建:

curl -i -u pengwynn \ 
    -d '{"name": "create-repo-test", "auto_init": true}' \ 
    https://api.github.com/user/repos 

產生的存儲庫將有一個README存根和初始提交。