我想解决以下问题: 我有一个存储库(称之为A)和它的克隆(称之为B)。我在B做了一些改动,我想让A的主人拉它。我想实现一个函数,可以判断B中的更改是否可以拉到A而不会导致任何冲突。我想以一种不破坏A中信息的方式实现这一点(所以任何克隆A的人都会看到与此混淆检测之前完全相同的信息)。
请注意,我想以更有效的方式解决它。我看到bitbucket非常快地执行拉取请求检查。你有什么想法吗?
提前致谢
答案 0 :(得分:3)
首先, pull 本身不会产生任何冲突。它只是将更改集添加到存储库历史记录中,可能还添加了新的分支/头。合并这些头时可能会遇到冲突。因此当 A 从 B 拉出时, A 中没有任何内容。
但是,如果您希望 A 的所有者包含您的更改,您实际需要做的是将最近的更改从 A 提取到 B中和 - 如果需要 - 将 A 中的新更改合并到您的新更改中。然后从您现在合并的 B 请求拉取, A 可以在不添加新头的情况下拉动,因此无需处理冲突。
如果你不想按照常见的工作流程但是真的想按照问题中的描述进行检查,只需创建 A 的新克隆,让我们说 C ,并尝试从 B 拉入并合并到 C 。但最后你最终会完成上面提到的步骤。
答案 1 :(得分:0)
难道你不能只创建另一个A的克隆并在那里进行合并吗?通过这种方式,您可以了解合并的方式,并且您不会搞砸A。