我们目前支持两种分支策略;gitflow和基于trunk的开发。我的公司开始使用我称之为混合(读起来不正确,IMO(的gitflow模型,但公司的方向是转向基于trunk开发。我喜欢这个方向,但最好的方法是什么?我正在寻找最佳实践,但找不到网上讨论的主题。
我们使用GitHub进行SCM
在我们的混合gitflow分支策略中,我们的git项目目前(IMO(没有使用gitflow";主";正确分支。
我们应该:
- 在GitHub中创建新的git项目,并存档旧的基于gitflow的git工程
- 阻止对";主";基于gitflow的git项目中的分支
- 删除";主";在基于gitflow的git项目中,然后遵循基于trunk的dev
感谢
我也处于类似的情况,希望从Git Flow切换到基于Trunk的开发。
这就是我最终解决将大量代码从"dev"合并到"master/main"的难题的方法:
TL;DR:在操作系统中将"main/master"完全替换为"dev代码"。提交更改。将"dev"合并到"master/main"中。锁定开发
详细流程-
- 切换到"dev"分支
- 在另一个文件夹中的本地驱动器上复制"dev">
- 切换到"主/主">
- 从本地驱动器中删除此分支文件夹的所有内容,除了的.git文件夹
- 将步骤2中"dev"的备份/副本中的所有内容,除.git文件夹外,复制到"master/main"分支的文件夹
- 做一个"git status",看看有很多变化
- git提交和git推送
现在您的"master/main"包含了"dev"的确切功能。
- 最后将"dev"合并为"master/main",因此历史记录/工具显示它们已经收敛
- 锁定dev分支
- 实施基于Trunk的开发和CI最佳实践
最美好的祝愿!