在GitHub上向另一个人的pull请求添加提交

时间:2014-01-05 00:56:18

标签: git github pull-request

我在GitHub上的项目已收到pull request。拉取请求仅部分解决了它正在解决的问题。我已将更改添加到本地分支并添加了一些我自己的提交。

我现在想将这些提交推回到我的远程仓库并让它们显示在拉取请求中,但不将它们合并到目标分支中。我想保持拉取请求的开放性,以便进一步审查和讨论,并可能进一步提交。

有没有办法我可以在拉取请求中添加提交而不将它们合并到目标分支中,从而关闭拉取请求?

4 个答案:

答案 0 :(得分:22)

只要原作者点击了右下方的复选框:

Allow Maintainers

如果选中该框,则可以回退到原始分支,而无需使用以下命令添加远程:

git push git@github.com:user/repo local_branch_name:remote_branch_name

如果你使用像hub这样的工具,你可以在不需要添加遥控器的情况下查看拉取请求,这一点特别有用。

答案 1 :(得分:12)

现在可以这样做(gist

假设您已从yourrepo收到otheruser的拉取请求。

将其他用户添加为远程

git remote add otheruser https://github.com/otheruser/yourrepo.git

git fetch otheruser

从他们的仓库创建一个分支

git checkout -b otheruser-master otheruser/master 

现在进行一些更改并提交。推送到他们的回购

git push otheruser HEAD:master

答案 2 :(得分:6)

除非barryceelen授予您对其分叉的推送权限,否则不会。你必须关闭他的拉取请求并从你的分支中打开一个新的请求,包括他的提交。

无法做你想做的事情很烦人。为了更好地利用GitHub流程,我建议请求forkers单独解决它们解决它们的pull请求,这意味着你可以保留最初的会话流,并通过你认为最好的pull请求关闭它。

答案 3 :(得分:0)

我使用新的gh cli工具。

gh pr checkout PR_NUMBER

然后进行更改,只要您有权限推动他们的分叉(根据我的经验,如果您拥有主存储库,通常就是这种情况)。使用gh工具,它将基本上复制其branch的名称,以便您可以这样做。

git push git@github.com:other_user/repo branch:branch