如何从克隆的回购提交拉取请求?

时间:2013-02-16 02:09:03

标签: github pull-request

如何从现有的本地克隆仓库提交拉取请求?

通常,我想从github查看一些库源代码,所以我克隆它。后来,我发现了代码的一些问题,并在邮件列表中提出,经常是顺便提一下。图书馆作者说“很好找,你能发送拉动请求吗?”。

答案是“不那么容易”。我还没分叉回购,我克隆了它。似乎没有办法从克隆的回购中提交拉取请求?

如果这个限制是真的,感觉就像是明智的反应就是把你所看到的任何东西和所有东西分开,这样如果你想要贡献,你就可以。这填补了许多非活动分叉的github帐户。

似乎没有多少关于这个问题的讨论 - 我是这个问题影响的唯一人吗?

3 个答案:

答案 0 :(得分:45)

在GitHub上使用repo,然后将fork repo作为远程添加到本地克隆副本中:

git remote add myfork https://github.com/<myGitHubAccountName>/<repoName>.git

然后你可以推到你的前叉:

git push myfork master

如果你做的不仅仅是这一个拉取请求,你可以删除origin遥控器并将你的叉子命名为原点:

git remote rm origin
git remote add origin https://github.com/<myGitHubAccountName>/<repoName>.git

这通常就是我的工作。有时我将原始原点添加为upstream,所以我仍然可以参考它。

答案 1 :(得分:9)

如果您在路径中安装另一个二进制文件,那么github已经发布了一个名为hub的小工具。

如果你克隆了别人的回购:

$ hub fork  # This creates a fork and adds your repo as a remote

$ git push YOUR_USER feature  # push the changes to your new remote

$ hub pull-request  # will open your browser

答案 2 :(得分:0)

我也总是克隆而不是fork,以下步骤对我有用:

  1. 在克隆的仓库上创建一个新分支并进行新更改。
  2. 按如下所示将更改推送到您的分支:

    git push origin insert_your_working_branch_name

  3. 现在您应该可以在github管理员的pull请求中找到您的工作分支。