两个最常用的许可证是GPL和MIT / BSD。要在两者之间做出选择,请问自己以下问题:
- 您使用的是任何GPL代码吗?然后使用GPL
- 您是在现有社区的背景下撰写的吗?然后使用社区的青睐许可证
- 你希望任何人使用它吗?然后使用MIT / BSD
- 您是否希望在开源项目中仅使用 ?然后使用GPL
- 是服务器软件,你想要任何用户贡献,即使他们只在自己的服务器上使用它?然后使用GPL v3
这些是许可证本身的简短(非常简短)描述:
- MIT / BSD:任何人都可以使用任何东西。你可以要求的最多就是归属。
- GPL v2:如果其他人(除了你)想要在另一个项目中使用,整个项目将是GPL。如果其他人写了增强/扩展/更改,他们必须发布更改,如果他们分发生成的软件。
- GPL v3:喜欢v2;但是,如果他们增强了您的软件,他们必须发布更改,即使他们不分发软件但只在公共服务器上使用。
- LGPL:GPL和BSD之间,主要是图书馆。如果有人将它用于项目,整个项目不一定是GPL;但如果他们修改了库本身(并分发了结果),他们就必须发布更改。