【发布时间】:2009-05-21 03:21:16
【问题描述】:
我正在开发一个手机应用程序,该应用程序根据它们提供的功能定位到许多移动设备。将有一个所有手机都应支持的基本功能集,然后会有取决于特定手机集的附加功能。
如何根据版本控制系统管理这样的代码库?
我有使用 CVS 和 VSS 的经验,但两者都不太适合我对此类应用程序的需求。我要做的最后一件事是为每个设备集分支代码。
让我通过一个例子来更清楚地说明这一点。假设我正在使用 MIDP 2.0 开发 J2ME 应用程序。这是我希望所有支持 MIDP 2.0 的手机都具备的基本功能集。最重要的是,我会使用他们的 SDK 将这个应用程序扩展到特定的手机组。例如。 Nokia S40、Nokia S60、Sony Ericsson、Blackberry 等。所有这些都提供了额外的功能,让您可以在基础应用程序之上构建更多功能,而且大多数情况下,这些功能会影响您从 UI 到核心逻辑的整个代码库。
实现此目的的一种方法是将构建系统与预处理器标志结合使用,并尝试将差异区分开来,以免产生过多的依赖关系。这有时会变得相当复杂。我想知道是否有更简单的方法来使用智能源代码控制系统来处理这个问题......
【问题讨论】: