我有以下场景:
3个分支机构:
- 掌握
- MyBranch 从 Master 中分支出来,目的是开发系统的新功能
- MyBranch Local 从 MyBranch 分支出来作为我的本地分支副本
MyBranch 正在针对其他开发人员(他们正在开发与我相同的功能)进行重新定位和推动。
作为 MyBranch 分支的所有者,我希望通过变基使其与 Master 保持同步。我还需要将对 MyBranchLocal 所做的更改与 MyBranch 合并。
有什么好的方法可以做到这一点?
到目前为止我尝试过的几种可能的情况:
I.
1. 将更改提交到 MyBranchLocal
2. 针对 Master 重新设置 MyBranch 基础
3. 根据 MyBranch 重新设置 MyBranchLocal 的基础
4. 将 MyBranch 与 MyBranch Local 合并
II.
1. 将更改提交到 MyBranchLocal
2. 将 MyBranch 与 MyBranch Local 合并
3. 针对 Master 重新调整 MyBranch 的基础
4. 根据 MyBranch 重新设置 MyBranchLocal 的基础
III.
1. 将更改提交到 MyBranchLocal
2. 针对 Master 重新设置 MyBranch 基础
3. 将 MyBranch 与 MyBranch Local 合并
4. 根据 MyBranch 重新设置 MyBranchLocal 的基础
我已经知道场景 III 似乎会严重扰乱提交历史记录,可能会重复提交。
你的经验是什么?您建议使用哪些方案来最大程度地减少合并工作并保持历史记录干净?
我个人的建议。这个专注于拥有直接的提交历史记录,并在“更具体”的分支上失败(你最好搞乱本地分支而不是功能分支)。
- 将更改提交到 MyBranchLocal
- 针对 MyBranch 重新设置 MyBranchLocal 基础
- 将 MyBranch 与 MyBranch Local 合并(应该快进) - MyBranch = Local
- Rebase MyBranch against Master
- (可选)将 Master 与 MyBranch 合并(也应该快进)
- 针对 MyBranch 重新设置 MyBranchLocal 基础
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)