Vij*_*har 10 git git-submodules git-branch
我有一种情况,哪种git策略适合使用?
情况:
我们有一个应用程序,它有一个git存储库.我们遵循分支策略,
分支:开发:由所有开发人员用来实现这些功能
分支:测试:开发代码直到当前部署以测试应用程序.
分支机构:生产:经过测试团队的批准,我们将测试分支合并到生产并将其部署到生产环境.
问题:
现在我们有3个不同的生产安装(site1.mainDomain.com,site2.mainDomain.com,site3.mainDomain.com),这3个安装现在有不同的标题(标识,标题颜色).
site1.mainDomain.com可能有一些可以在将来开发的功能,并且只能用于site1.mainDomain.com.
未来的某些功能对于site1.mainDomain.com,site2.mainDomain.com可能很常见,但对于site3.mainDomain.com则不常见.
现在,如果在site1.mainDomain.com的生产上出现任何问题,这是基础分支的主要问题,我们将如何处理这个问题.
那么为了实现这个git策略有用吗?我正在阅读关于子模块,git子树,git补丁......但有点困惑做出决定.请提供最佳解决方案和策略.
提前致谢.维杰
我认为你正在寻找解决这个问题的错误地方(版本控制系统).在这种情况下,我通常会为不同的上下文创建不同的设置文件,将所有这些文件保存在同一个git分支中,并且每个部署只需要一个小的本地配置文件(主要是选择正确的上下文).然后,您的代码可以根据上下文检查要显示的内容类型.
我强烈建议不要为每个站点制作不同的功能分支,因为这会让你陷入凌乱的混乱和不断的合并冲突,解决得非常快.
我强烈建议不要使用 git 来解决问题。我可以从经验中看出这一点,因为我正在从事的项目陷入了无缘无故需要维护两个 git 分支的陷阱。Github Firewall Install(Github:FI,Github Enterprise 的前身)也有同样的问题。
我建议查看功能标志(功能切换)模式来解决您的问题 - http://martinfowler.com/bliki/FeatureToggle.html