如何配置GitHub以便自动分配所有问题?

时间:2013-11-30 19:46:53

标签: github

如果可能,我如何配置公共GitHub仓库以便自动分配所有问题?

我可以通过https://github.com/blog/831-issues-2-0-the-next-generation获得的最接近的是:

  

“您可以从此页面进行批量编辑:关闭,重新打开,添加标签,分配给用户或添加到里程碑。”

由于gitHub网页界面不允许我按受让人对问题进行排序,因此比我希望保持整洁有点困难。

想法?提前致谢。

1 个答案:

答案 0 :(得分:0)

自动化流程的一种方法是通过脚本:

  • 列出问题
  • 将某人分配给没有任何受让人的人

应该可以使用GitHub API V3及其Issue API

PATCH /repos/:owner/:repo/issues/:number

(您可以使用POST代替PATCH

This script导入并分配案例:

// GitHub API endpoint for /repos/:user/:repo/issues
const GH_API = "https://USER:PASS@api.github.com/repos/%s/%s/issues"

// GitHub logins to assign tickets to. The first one is considered the default.
var validAssignees = []string{"LOGIN1", "LOGIN2"}

...

// Posts the new JSON-encoded issue to GitHub using the given ticket.
func postIssue(ticket Ticket, repo string) {
  bodyType := "application/json"
  jsonIssue := strings.NewReader(encodeTicket(ticket))
  url := fmt.Sprintf(GH_API, repo)

  resp, respErr := http.Post(url, bodyType, jsonIssue)
  checkError(respErr)

  fmt.Println(resp.Status)
  http.DumpResponse(resp, true)
}