我有一个主站点,我已将其分成两个新站点。这些网站有 80% 相同,但也有一些差异。因此,在主站点上进行更改时,需要将某些提交发送到分支,而其他提交则不需要。
现在我正在通过使用cherry-pick更新我的叉子来处理这个问题。因此,当我在需要传播的主站点上进行更改时,我必须登录到两个分支并使用cherry-pick 单独更新它们。然而,这有点乏味,因为每次我推送更改时,我都需要立即登录到我的两个分支并更新,所以我不会忘记哪些提交需要被拉入,哪些提交不需要。
我的问题是:有没有办法标记需要在主存储库上传播的提交,以便在我的分叉中我可以说“仅合并标记的提交”而不是逐个挑选每个提交?
感谢您提供有关如何管理这些网站的任何提示。
更新——我太新了,无法回答我自己的问题,而且这个回复对于评论来说太长了——所以,我把它扔在这里:
啊……好吧,我想我明白了。这是我第一次涉足分叉,所以我想我可能会有点迷失在这些条款上。似乎分支和叉子有时可以互换。让我看看我是否正确理解了这个概念。
我有一个原始存储库,它是原始站点。当站点出现分歧时,我应该采取原始回购并分叉到“fork A”中。这给我留下了原始的回购,我现在称之为“上游”。所以,我有主“上游”,它被分叉到叉子 A 中。
所以,我继续在 fork A 中工作,并且我有一些我想拉回“上游”的提交。为了解决这些问题,我会使用“git checkout upstream/master”在上游结帐。然后我可以将共享提交挑选到该分支并推送它们。
现在,在 fork A 分离后的晚些时候,我还将 Fork B 从“上游”中分离出来。要更新 Fork B,我现在只需执行“git pull upstream/master”,对吗?
感谢您的帮助理解。我很喜欢 git 的强大功能,但它绝对会让你的大脑大吃一惊。:)