14

我正在使用 git 对协作项目进行版本控制。

我有两个遥控器。fork是一个项目的一个分支,而origin是原始项目。

那么,当我发送推送(git push fork master)时,我可以自动创建一个原始可用的拉取请求来合并它吗?

我不能直接承诺原产地(我知道这是可能的)。我需要先 push 来分叉,如果管理员批准,请在origin上接受。我想自动化这个过程,避免我手动去 github 并打开一个 fork。

我怎么能这样做?

编辑:

私人机构:

name: Org
repository: main
branch: master

私人分叉:

name: OrgFork (A organization of mine with forks from **Org**) 
repository: main
branch: testing

我尝试了以下方法,但还没有奏效:

curl -X POST -u <Username> -k -d '{"title": "<Title>","head": "Org:main","base": "testing"}' https://api.github.com/repos/Org/main/pulls

怎么了?我怎样才能解决这个问题?

编辑 2

另一种尝试:

hub pull-request "Testing" -b OrgFork:main:testing -h OrgFork:main:master
4

2 回答 2

10

你应该看看hub,一个与 GitHub 交互的命令行工具。

它的自述文件谈到了提出拉取请求。

于 2013-03-09T07:04:21.600 回答
10

终于成功

第一个问题是我使用的是密钥密码而不是我的 github 密码。

使用这种结构:

私人机构:

name: Org
repository: main
branch: master

私人分叉:

name: OrgFork (A organization of mine with forks from **Org**) 
repository: main
branch: testing

另一个问题是我需要接受正确的参数,最终命令如下所示:

hub pull-request "Testing pull-request" -b Org:master -h OrgFork:testing

谢谢@cjc343,@StevenPenny,@desert69 =)

于 2013-03-12T19:18:28.910 回答