如何在没有拉取请求的情况下合并github.com上的分支机构?

fre*_*nte 15 github

看起来GitHub只允许通过发出拉取请求然后合并来合并分支.

有没有办法在没有本地克隆的情况下合并mobilemaster一个步骤中

我只看到这个按钮,它创建了一个需要在第二步中合并的拉取请求:

比较,查看,创建拉取请求

Eev*_*vee 16

Github没有提供这样的机制 - 并且通过遵循最佳实践,它们提供这样的功能是没有意义的.

步骤是在您的机器上合并它,然后按:

git merge mobile
git push
Run Code Online (Sandbox Code Playgroud)

拉取请求实际上仅适用于您无法控制的存储库和/或某些代码审查过程.

根据对这个问题的评论,如果这对您不方便,很可能是违反最佳做法的一个迹象,阻碍了您正常工作的能力.

  • 那么答案很简单:你做不到. (5认同)

Dae*_*yth 8

Github此时不通过Web UI提供此功能.


fre*_*nte 7

您无法在网站本身上执行此操作,但可以通过Branches API执行此操作,而无需在本地克隆:

curl \
  --header "Authorization: token $TOKEN" \
  --data '{"base":"master","head":"develop","commit_message":"YOOOO"}' \
  https://api.github.com/repos/$USER/$REPO/merges
Run Code Online (Sandbox Code Playgroud)


mfu*_*n26 3

您可以使用 GitHub Docs 的GraphQL API Explorer来运行mergeBranch突变

mutation {
  mergeBranch(
    input: {
      repositoryId: "MDEwOlJlcG9zaXRvcwNzI="
      base: "master"
      head: "cool_feature"
      commitMessage: "Shipped cool_feature!"
    }
  ) {
    clientMutationId
    mergeCommit {
      oid
      message
    }
  }
}
Run Code Online (Sandbox Code Playgroud)

id注意:您可以使用查询按和repository进行搜索来查找存储库。ownername

{
  repository(owner: "my-name", name: "my-repo") {
    id
  }
}
Run Code Online (Sandbox Code Playgroud)