一般情况下, 社区版的代码应该都会托管到 github 。
这里, 我想问下, 如果做一个该软件的专业版本(收费版),如何管理代码?
1
imnpc 2020-11-20 14:35:07 +08:00
本地开发的话建立 2 个项目
社区版开发好的合并到专业版 专业版代码单独提交到私有库 |
2
cmdOptionKana 2020-11-20 14:44:57 +08:00 via Android
可以共用的代码单独一个仓库,社区版与专业版都去引用它。如果不相信大厂,可以自建 git 服务器给专业版用。
|
3
XiLingHost 2020-11-20 14:49:01 +08:00
插件化,社区版写成平台和通用插件,专业版写成增强插件,然后专业版实际上就是变成几个独立的插件项目了
|
4
andytao 2020-11-20 14:49:49 +08:00
分两个库,一个公共的,一个私有的,袋鼠数据库工具 目前就是这样子安排的。
|
5
aincvy OP @imnpc 我的初始想法也是这样, 先使用 github 开发社区版本, 等时机成熟了,建立一个私有项目做专业版。
但是想到 如果别人提交了 PR 什么的话, 处理起来会不会较为麻烦 ? |
6
aincvy OP @cmdOptionKana 那个共用的代码的仓库是不是约等于 社区版本了。。?
|
7
aincvy OP @XiLingHost 刚刚简单的看了下,jetbrains 家族的 IDE 似乎就是这种形式 ? 这种形式下, 如何确保插件只工作在专业版授权下 可能是个问题
|
8
XiLingHost 2020-11-20 15:01:52 +08:00
@aincvy 插件做鉴权啊,就和一般软件的授权类似
|
9
aincvy OP |
10
XiLingHost 2020-11-20 15:13:19 +08:00 1
@aincvy 混淆和加密啊,甚至可以做联网验证
|
11
donnior 2020-11-20 15:14:32 +08:00
把社区版作为商业版的 upstream
|