让我们假设有一个中央存储库,其中来自卫星的提交被推送了一段时间。开发人员 A 在他的 repo 上做了一些提交,而 B 也自己做了一些。
现在,A 想要将 B 的一个提交合并到他的 repo 中(他不能直接访问它来拉取)。
一种方法是让 B 创建一个补丁并将其发送给 A,但在这种情况下存在两个问题: 1. 补丁将显示为 A 的本地修改,然后 A 必须提交它(使用它自己的名称) 2. 一旦中央存储库已更新,更改将发生冲突(由两个不同的作者推送)。
有没有办法让补丁直接“作为提交”应用到本地 A 存储库上,这样在他看来就好像它是从中央存储库(即来源)中提取的?
PS:(这可能不适用:请参阅评论:有没有办法在验证之前删除文本?)经过更多调查和测试,看起来 git am < git-formatted-patch 也会使补丁看起来提交给本地master(然后我希望当B将它推送到中央仓库时它会被识别为相同的提交)。看起来是 git apply 使补丁未提交...