将提交提交给已打开拉取请求的另一个用户的分支

时间:2017-03-02 18:21:00

标签: git github push commit git-branch

我在github上有一个存储库。我的存储库由另一个用户分叉。现在他提出了拉动请求。我想将一个提交从我的结尾推到他的功能分支(他为此提出了一个PR)。这可能吗。

这就是我做的事情

git pull remote-ref-other-user feature-branch

这样做之后,我能够完成他的提交。但是当我做一些更改时,添加另一个提交并尝试以这种方式推送它。

git push remote-ref-other-user feature-branch

我收到此错误

error: src refspec feature-branch does not match any.
error: failed to push some refs to 'https://github.com/other-user/repo'
  

是否可以将提交从我身边推送到他的分支机构。如果是,那么怎么做呢。

2 个答案:

答案 0 :(得分:3)

假设您将其存储库(称为“mysamplerepository”)添加为远程:

git remote add johnrepo https://github.com/john/mysamplerepository

你的分支叫tweaks

如果您想将更改推送到其存储库中名为master的分支,您可以这样做:

git push <remote-name> <source-ref>:<target-ref>

或在此示例中:

git push johnrepo refs/heads/tweaks:refs/heads/master

请记住,您还需要具有写入权限(推送访问权限)才能推送到其存储库。您可以在Github's documentation上了解详情。

答案 1 :(得分:1)

如果可能的话,将取决于写权限:

  • 作为存储库所有者,您应该具有写权限,可以向其他用户的PR添加提交(除非已在该用户的PR中明确将其关闭)
  • 如果您不是存储库所有者,则将无法向其他用户的PR添加其他提交

为GitHub用户添加遥控器后,例如

git remote add <name of remote> git@github.com:<user>/<repo>.git

我使用

git checkout -b <name of branch> <name of remote>/<name of branch> 

创建跟踪远程的本地分支。完成更改并提交后,我可以执行以下操作:

git push <name of remote> <name of branch>