管理具有差异的跨平台项目的存储库
Posted
技术标签:
【中文标题】管理具有差异的跨平台项目的存储库【英文标题】:Manage repository for cross-platform project with difference 【发布时间】:2021-11-14 21:21:54 【问题描述】:我必须从事在桌面、移动设备和网络上运行的跨平台项目。 问题是 Web 应用程序和桌面/移动设备之间存在一些差异。某些功能仅针对 Web 应用程序开发,某些功能仅针对桌面/移动设备。
如何使用我的 VCS(在本例中为 git)处理此问题。
我只是想创建两个不同的主分支,一个用于 Web 部件,一个用于移动/桌面,但我不喜欢它。
有人可以帮我吗?
谢谢。
【问题讨论】:
【参考方案1】:我不会使用分支来存储您的应用程序的不同版本。
Long-running branches 往往会随着时间的推移而分道扬镳,这使得保持应用程序的共享部分同步变得越来越困难,同时考虑到特定平台的差异。简而言之,那就是merge hell。
相反,我会在架构级别寻找解决方案。也许您可以将应用程序的核心功能实现为共享库或 Web API,并让不同的 GUI 使用它?另一种解决方案是使用feature toggles 基于相同的代码库创建不同的配置。
【讨论】:
您好,感谢您的提示。我认为对于我的问题,我必须使用功能切换。以上是关于管理具有差异的跨平台项目的存储库的主要内容,如果未能解决你的问题,请参考以下文章