假设我的GitHub上有4个提交,并且我已经向另一个协作者发送了一个拉取请求。但在这4次提交中,有1次提交,我不希望我的合作者接受该文件。我们如何做到这一点?据我所知,只有一个按钮显示自动合并(如果没有冲突),我们不能选择我们想要接受的提交。
其次,我的Github上已经存在1个提交,并且我没有向另一个协作者发送任何拉取请求(在这种情况下,有未被另一个协作者拉取的未决拉取请求)。但一旦协作者拉出文件,我没有发送的提交将自动包括在内。所以我看不出拉请求在这里有什么用处。而我们仍然可以在不发送拉取请求的情况下获得所有更新的数据。
所以我的主要问题是,有没有其他方法来选择我们希望另一个协作者接受的提交?因为有时,我不希望我的合作者首先接受提交/文件。
发布于 2012-01-26 14:57:07
据我所知,只有一个按钮显示自动合并(如果没有冲突),我们不能选择我们想要接受哪个
。
以类似的方式,你在推送到GitHub之前使用Git进行本地提交,没有什么能阻止你的合作者从GitHub拉取你的分支,在本地合并,然后在中推回他的分支合并后的提交。
GitHub只增加了一个合并拉流请求的快捷方式。这是,而不是唯一的方法。
考虑到你的问题,你必须使用Git。GitHub UI只适用于简单的合并。您的协作者有两个独占选项:
手动提交4个提交中的3个,然后合并4个提交,然后
最后一种选择是把负担放在你的肩上:
,但一旦协作者拉出文件,我没有发送的提交将自动包括在内。
看起来你在master上做出了承诺。通常,每个开发人员为每个主题( bug或新特性)创建一个分支。与此主题相关的所有工作都在此分支中执行。完成此操作后,您将推送此分支,并从中打开一个拉取请求。
要么拉取请求被合并,下一次你将从主流存储库中拉出,你的工作现在将被集成到主分支中。或者拉取请求已被拒绝,您可以删除该主题分支或返工。
有时,可能会发生主题分支太旧而无法在没有冲突的情况下合并。维护人员可能会要求您在当前HEAD之上您的分支,并使用此更新的分支force-update您的pull请求。
这篇相当完整的文章将帮助你了解这个的细节。
https://stackoverflow.com/questions/9013915
复制相似问题