-2

是否可以使用“SVN”来维护免费和专业版?例如,将免费版(包含 90% 的代码)放在“trunk/myapp”目录中,将专业版放在“branches/myapp_pro”目录中。

我通常使用免费版本的项目库和包含此库到专业版的另一个项目。但我总是对 Eclipse 有很多问题。我会更改为软件版本控制模型,但不太知道如何处理它。

或者也许它是更好的“GIT”?

4

2 回答 2

3

我建议将其作为构建问题而不是版本控制。维护相同代码的 2 个几乎相同的版本似乎相当麻烦……

于 2013-05-15T15:22:11.973 回答
1

由于您采用版本控制系统而无需维护遗留存储库,因此我建议完全使用 GIT,原因如下:

  • GIT更快
  • 它是分布式的,这意味着它会在您的主机上保留一份历史记录,允许在离线时提交并提供防止数据丢失的保护,因为每个贡献者都有一个存储库的副本。
  • 它具有适当的分支管理(优于 SVN)
  • 它具有许多您会喜欢的高级功能。

因此,进入您的工作流程:

  1. 将增量更改分解为提交。
  2. 您可以使用tags维护已发布版本的历史记录,这些标签本质上是“命名时间标记”,指向历史记录中的某个提交。例如,您可以使用 tag v1.1,thenv1.2beta等。
  3. 在构建中包含额外功能时(免费与专业),最好的地方是在构建系统中:创建两个编译目标并在一个中包含额外功能。

关于最后一点,您不会公开分发代码,因此两个版本可以毫无问题地存在于同一个文件夹中:使用两个存储库/文件夹可能会导致代码重复,因为专业版包含免费的;使用两个存储库很难修复错误,因为您必须保持同步并将错误补丁从一个存储库复制到另一个存储库。

于 2013-05-15T15:57:43.063 回答