我是一个公司在GitHub上的git仓库的贡献者。
我想找出哪些贡献者是管理员。
除了四处询问公司中的每个人之外,我该如何找出谁是管理员?
我想找出哪些贡献者是管理员。
除了四处询问公司中的每个人之外,我该如何找出谁是管理员?
https://api.github.com/repos/ORG/REPO/collaborators
将为您提供所有协作者的列表,并列出每个协作者的权限类型:"permissions": {
"admin": true,
"push": true,
"pull": true
}
curl
和jq
(用于解析JSON响应):curl https://api.github.com/repos/ORG/REPO/collaborators \
-H "Authorization: Token ACCESS_TOKEN" | \
jq '[ .[] | select(.permissions.admin == true) | .login ]'
?access_token=ACCESS_TOKEN
的用法已被弃用。有关详细信息,请参见https://developer.github.com/changes/2019-11-05-deprecated-passwords-and-authorizations-api/#authenticating-using-query-parameters。 - RTMquery {
repository (owner:"ORG",name:"REPO") {
collaborators (first:100) {
totalCount
edges {
permission
node {
login
name
}
}
pageInfo {
endCursor
hasNextPage
}
}
}
}
查找具有"permission": "ADMIN"
的结果。
endCursor
是书签。 - jnnnnndef headers(token: str):
return {"Accept": "application/vnd.github+json", "Authorization": "Bearer " + token}
def collaborators(api_base: str, token: str, org: str, repo: str):
users = requests.get(f'https://api.github.com/repos/{org}/{repo}/collaborators', headers=headers(token)).json()
return [x['login'] for x in users if x['permissions']['admin']]
https://api.github.com/orgs/docker/members?role=admin