2013-08-01 52 views
1

我想为两个提交(父代和它的子代)之间的差异创建拉请求。我可以在d4242...d4141与我的两次提交之间做一个差异性比较,但它接受github不允许将d4242...d4141放在该字段中。 (错误:没有任何东西需要比较)拉请求差异

他们是拉取请求差异还是至少说明从原始存储库和叉存储库之间的差异中删除一些文件/散列的方法?

回答

3

您只能为分支创建拉取请求,因此只需创建一个指向d4141的分支并为其启动拉取请求。

您还应该确保整个分支在上游主人的基础上重新组装,并且它确实包含而不是包含您可能在自己的存储库中存在的任何其他依赖关系。因此,它不应该是这样的:

A --- B --- C --- [d4242] --- * --- * --- [d4141] 
/
X --- * --- * --- [upstream/master] 

如果是这样的话,你应该摆脱提交ABC,因为他们是唯一的你的叉子。您可以通过创建一个新的分支断要么Xupstream/master,然后做樱桃采摘所有你想要的提交您的拉请求:

git checkout -b new-pull-request upstream/master 
git cherry-pick d4242..d4141 
git push origin new-pull-request 

然后你可以创建一个分支,你拉的请求。

一般而言,您为上游项目所做的工作,您希望参与的项目应该在单独的主题分支中完成,即完全独立且分离的分支。通过这种方式,您将永远不会遇到可能无法将其提交到上游存储库的提交的依赖性问题。它还使上游存储库的维护人员更容易接受您的请求。

+1

如您所说,我清理了存储库并将每个修补程序应用到了分离的分支中。这样对我和维护者来说都很简单。谢谢 :) –

1

你可以启动一个基于上游的新分支,然后选择d4141,然后为新分支做一个pull请求。