Git 拉请求差异

Git 拉请求差异,git,github,Git,Github,我想为两个提交(父项及其子项)之间的差异创建一个拉请求。我可以使用d4242…d4141在两次提交之间进行区分,但github不允许将d4242…d4141放在字段中。 (错误:没有可比较的内容。) 他们是不是一种解决请求差异的方法,或者至少告诉您从原始存储库和fork存储库之间的差异中删除一些文件/散列?您可以基于上游和cherry pickd4141启动一个新分支,并对新分支执行拉取请求。您可以基于上游和cherry pickd4141启动一个新分支并为新分支执行拉取请求。您只能为分支创建拉

我想为两个提交(父项及其子项)之间的差异创建一个拉请求。我可以使用
d4242…d4141
在两次提交之间进行区分,但github不允许将
d4242…d4141
放在字段中。 (错误:没有可比较的内容。)


他们是不是一种解决请求差异的方法,或者至少告诉您从原始存储库和fork存储库之间的差异中删除一些文件/散列?

您可以基于上游和cherry pick
d4141
启动一个新分支,并对新分支执行拉取请求。

您可以基于上游和cherry pick
d4141
启动一个新分支并为新分支执行拉取请求。

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

您还应该确保整个分支在上游主分支的基础上重新建立,并且它不包含您自己的存储库中可能存在的任何其他依赖项。所以它不应该是这样的:

  A --- B --- C --- [d4242] --- * --- * --- [d4141]
 /
X --- * --- * --- [upstream/master]
如果是这种情况,您应该去掉提交
A
B
C
,因为它们是您的fork所特有的。您可以通过从
X
上游/master
创建一个新分支,然后在拉取请求中选择您想要的所有提交来实现这一点:

git checkout -b new-pull-request upstream/master
git cherry-pick d4242..d4141
git push origin new-pull-request
然后可以为该分支创建拉取请求


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

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

您还应该确保整个分支在上游主分支的基础上重新建立,并且它不包含您自己的存储库中可能存在的任何其他依赖项。所以它不应该是这样的:

  A --- B --- C --- [d4242] --- * --- * --- [d4141]
 /
X --- * --- * --- [upstream/master]
如果是这种情况,您应该去掉提交
A
B
C
,因为它们是您的fork所特有的。您可以通过从
X
上游/master
创建一个新分支,然后在拉取请求中选择您想要的所有提交来实现这一点:

git checkout -b new-pull-request upstream/master
git cherry-pick d4242..d4141
git push origin new-pull-request
然后可以为该分支创建拉取请求


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

正如您所说,我清理了存储库,并在一个单独的分支中应用了每个补丁。这样对我和维护人员来说都很简单。谢谢:)正如您所说,我清理了存储库,并将每个补丁应用到一个单独的分支中。这样对我和维护人员来说都很简单。谢谢:)