我有一个本地主分支,我想用其他人拥有的repo创建一个pull请求。当我尝试“推分支”时,我收到以下文字:“无法连接到任何网址:https://github.com/jleclanche/fireplace:git-receive-pack不允许”
我猜我在这里做的事实上是在尝试合并,而不是提出请求。我该怎么做?
答案 0 :(得分:6)
这些是分叉存储库,进行更改并最终打开pull请求以将更改合并回原始存储库所需的步骤。
在GitHub上,导航到存储库页面,然后点击页面右上角的Fork按钮
将分叉存储库的URL复制到create a local clone in EGit
我建议以your-name/issue-name
的形式创建一个新分支。在单独的分支上工作可以提供更好的监督,并有助于并行处理多个拉取请求。
Make one or more commits应该以拉取请求结束。
Push对分叉存储库的这些更改。
在GitHub上,导航到fork的页面。您应该在那里看到一条消息,指示已创建新分支以及用于创建拉取请求的按钮。单击此按钮。在下一页上,您可以提供更多信息,最后确认拉取请求的创建。
为了使用对原始存储库所做的更改,您需要将其作为remote添加到本地克隆。
您甚至可能希望重命名远程数据库,以便分叉存储库(您要推送的存储库)名为fork
,而原始存储库使用默认名称origin
。
例如:
[remote "fork"]
url = git@github.com:your-name/forked-repo.git
fetch = +refs/heads/*:refs/remotes/fork/*
[remote "origin"]
url = git@github.com:user/originating-repo.git
fetch = +refs/heads/*:refs/remotes/origin/*
答案 1 :(得分:0)
在此答案中,我假设您对所涉及的项目具有提交权限,但仍要创建拉取请求。在这种情况下,不必分叉存储库。