github API - 使用curl PUT为团队添加一个repo

时间:2011-10-27 22:59:09

标签: curl github put

我正在尝试在github上为团队添加一个repo,因此:

curl -i -u username:password  -X PUT  -d "" https://api.github.com/teams/:team/repos/:user/:repo

(细节遗漏)

非常详细地说明了那些冗长的文件 这给出500 Internal server error

如果我遗漏了-d"",则会提供411 "Content-Length required"
如果我指定(使用-H"Content-Length: 0":再次500错误...
有线索吗?


[编辑]答案:API提供虚假回复,文档不是很好:
:team”是系统分配的数字ID(不是您给它的名称.. arg!) - 只有API查询或浏览浏览器中的URL时才能看到它。多么优雅。
此外,您似乎不能在您的帐户下只分配任何 ol'回购 - 它必须位于团队所属的“组织”中。
去那里显然需要一些有趣的体操...如果我弄清楚的话会更多。到目前为止GitHub Usablity评级:(1-10)2。


[编辑2]结论:github上的文件规定了这个:

  

添加团队回购

     

为了向团队添加回购,经过身份验证的用户必须是该团队所关联的组织的所有者。

PUT /teams/:id/repos/:user/:repo

不起作用。 的工作原理是:

PUT /teams/:id/repos/:org/:repo

将“:user”替换为“:org”(团队所属的“组织”名称。

案件结案。希望这有助于有人避免同样有趣的下午。

3 个答案:

答案 0 :(得分:1)

您还需要确保:repo是repo["name"]字段,而不是repo["id"]字段。

答案 1 :(得分:0)

对于再次遇到此事的人......看起来像:org现在是全名,而不是ID

答案 2 :(得分:0)

" github上的文件规定了这一点:"

  

添加团队回购

     

为了向团队添加回购,经过身份验证的用户必须是   团队所关联的组织的所有者。

PUT /teams/:id/repos/:user/:repo

不起作用。这是什么工作:

PUT /teams/:id/repos/:org/:repo

更换":用户"与":org" ("组织的名称"团队所属的名称。