Py学习  »  Git

如何在Git中维护库的“lite”和“pro”?

MoYummy • 6 年前 • 1829 次点击  

我有两个版本 lite pro 为我的图书馆。文件可以重叠、不同和 赞成的意见 -只。

我想在Git上维护它们,可能一个在Gitlab上,另一个在Github上,或者两个都在Gitlab上,因为Gitlab支持私有回购(对于我的 赞成的意见 )

对于这种情况,是否有方便的做法?我很不喜欢做两次承诺行为。

Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/38800
文章 [ 2 ]  |  最新文章 6 年前
Mahernoz
Reply   •   1 楼
Mahernoz    7 年前

您可以使用单一回购。 1)在Git、Lite和Pro中创建两个不同的分支。 2)还可以创建另一个分支,称为dev-lite和dev-pro。这将使开发人员工作在进行中的版本。 3)同时通知所有开发者支付回购。(如果分叉听起来很困难,则为每个开发人员分别创建分支)

现在,devs将分叉您的repo,并将提交dev-lite和dev-pro上的更改,无论它们在哪个分支上工作。应该有一个管理员在代码检查后合并这些更改。

4)以这样的方式配置Jenkins构建服务器:只要提交更新dev-lite或dev-pro分支,就可以运行构建并将其发布到各自的环境中。

5)现在,到了发布阶段,一旦做出决定,您就需要在dev-lite和dev-pro分支中标记一个版本,并将代码重新平衡/合并到pro和lite分支。

6)此分支机构的代码将是您的生产代码,并将为客户端实时运行。

通过这种方式,您可以将Lite和Pro都放在一个回购中。

Richard
Reply   •   2 楼
Richard    7 年前

在C中,您可以使用 #if 根据预处理器标识符添加代码块 project configuration .

也就是说,除了“debug”和“release”构建之外,您还拥有“lite debug”、“lite release”、“pro debug”和“pro release”(在更大的项目中,四个配置似乎很少)。

Partial functions 还可以帮助(允许代码调用可能存在或不存在的代码)。


如果您希望“Lite”版本是开放源码的,并且完全关闭,那么您需要一种不同的方法。您可以同时维护这两个版本(这将使精简版更容易实现,但要注意复制第三方对您关闭的版本所做的更改对许可证的影响)。

或者使用处理工具从完整版本中提取精简版,所有维护都在完整的、封闭源代码的版本上完成。