鉴于我在一个团队中维持一个长期的回购分支,我想分歧但仍然在上游做出一些改变,我不知道如何应对这种情况:
答案 0 :(得分:1)
你在这里没有好的选择。
事实是他们已将您的提交复制到新提交。现在有两份。如果您希望继续使用他们的存储库,您可以删除提交 - 即。,rebase并使用哈希更改 - 或者保留两者。因此,总共只有三个选项:
就个人而言,我可能会选择2和3的组合:毕竟,选项2并没有那么多的痛苦,如果你与使用你的存储库的其他人协调,你可以将选项3的痛苦降到最低好。
也就是说,您和其他任何人使用您的分支 - 您的存储库是松散的,而不是紧密地耦合到最终的上游存储库;让我们调用你的fork F 和上游fork U - 对于任何使用 F 的人来说,你都同意某些分支名称被重新命名 U 基于时间,提交次数或其他标准。你们都使用其他分支来完成工作,然后在发送之前将该工作复制到一个基于rebased-with- U 的分支(作为拉取请求或对于使用 U 的人来说。您还可以根据需要将您的工作复制到“最新的基于 U 的分支”,以便进行任何类型的进展。
这样,你的fork F 在你的(复数,“你”是你自己的组)共享控制之下,半独立于 U ,但是某些部分 F 会在某种情况下与 U 重新同步。 (不同的部分可以有不同的时间表:对你来说最有意义。)你(组)选择重新同步的内容,时间和方式。