2

我收到了来自同一个贡献者的几个拉取请求。我遵循了 GitHub ' Using Pull Request ' 的建议,并毫无问题地合并了他的第一个请求:

git checkout master
git remote add username git://github.com/username/repo.git
git fetch username
git merge username/pull-request1

在合并来自同一个人的其他拉取请求之前,我向 master 添加了一些提交,然后推送。他的拉取请求自动关闭,我很高兴。

然后,今天我继续合并他的第二个拉取请求。

git merge username/pull-request2

合并时没有冲突,但来自 pull-request2 的代码不存在(有些块存在)。读完这篇文章后,我怀疑在合并剩余的拉取请求之前提交 master 是一个错误,但现在我不知道该怎么做。由于我推送到主仓库而其他人可能已经撤消,所以我无法及时返回。

编辑:我刚刚尝试了第三个请求,并且那个请求合并得很好。所以它一定与 pull #2 有关,但实际上,它只是一个 pull request。我不明白为什么它不应该合并。

4

1 回答 1

1

我在这里发布我的发现,希望它们可以对其他读者有所帮助。

那个 PR 唯一奇怪的是贡献者的分支名称,这恰好是master他想要合并的分支。我认为这可能是问题所在。在调查时,我什至发现了对此类问题的引用:

当您的拉取请求合并到目标分支时,维护者可能会决定重新调整您的提交以避免合并提交,或者将提交压缩为单个连贯的提交。如果您的拉取请求来自您的 'master' 分支,则在将目标分支合并回您自己的 'master' 时会遇到问题

我们最终关闭了麻烦的 PR。然后贡献者从不同的分支提交了一个新的,它合并得很好。

于 2013-02-09T09:14:13.343 回答