8

我从 GitHub 分叉了一个 repo 并进行了一些更改。然后我发现我在一个文件中的一个修改可以是对原始仓库问题的补丁,但是作者不想合并我的其他修改,所以我不想直接发送拉取请求。而且我认为再次分叉并修改该文件以制作补丁然后发送拉取请求似乎并不那么优雅。有没有“标准”的方式来做到这一点?

4

2 回答 2

8

在我看来,您应该使用相同的根创建一个新分支,然后使用cherry-pick添加您所做的每个提交,除了那些未被作者接受的提交。

然后在这个分支上发送一个拉取请求。

此外,如果您想将所有修改重新组合到一个简单的提交中,您可以在将其推送到在线之前在本地分支上使用squash rebase。

于 2013-04-24T10:01:56.370 回答
1

记下所需提交的 SHA-1 哈希。切换回原始项目的主分支,从中创建一个新分支,然后cherry-pick将其提交到新分支上。

然后,您可以将新分支推送到 GitHub 并发送带有更改的 PR。

如果您在一次提交中修改了多个文件,则必须以某种方式重写该提交。

于 2013-04-24T10:02:13.893 回答