2017-04-19 95 views
1

我試圖做一個捲曲請求到團隊添加到像這樣的回購:加入GitHub的團隊,以REPO

curl --user $USERNAME:$TOKEN -X PUT -d "" "https://api.github.com/teams/<team name>/repos/<org>/$REPONAME" 

我的變量是正確的,但我不斷收到一條消息未發現錯誤。任何人都有關於如何繼續的建議?

回答

1

here正確的端點是:

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

您必須指定球隊ID不是球隊名稱

下將獲得的Developers隊的隊名和執行PUT請求向指定團隊添加回購:

username=your_user 
password=your_password 

org=your_org 
repo=your_repo 

team=Developers 

teamid=$(curl -s --user $username:$password "https://api.github.com/orgs/$org/teams" | \ 
    jq --arg team "$team" '.[] | select(.name==$team) | .id') 

curl -v --user $username:$password -d "" -X PUT "https://api.github.com/teams/$teamid/repos/$org/$repo" 

注意本示例JSON解析使用jq

也可以考慮使用Personal access token與範圍admin:org,而不是您的用戶名/密碼(然後使用-H "Authorization: Token $TOKEN"

+0

這是否要求變化都沒有,如果團隊是私人?查詢團隊沒有從團隊列表中返回團隊。我必須使用開發工具獲得ID。到目前爲止,當我執行put請求時,我得到一個204錯誤,說沒有內容。 – user2019182

+0

我已經在一個祕密團隊(只對會員可見)上測試了這個,它對我很有幫助。 '204'是預期的代碼,請檢查[doc](https://developer.github.com/v3/orgs/teams/#add-or-update-team-repository)。 –

+0

Aww你說得對!謝謝! – user2019182