选择许可证

源码发布 需要 一个许可证。在灯塔国,如果没有指明许可证,用户是没有合法权利进行下载、修改或者再分发的。进一步讲,人们也无法向你的代码进行贡献,除非你告诉他们应该遵守什么规则。挑选合适的许可证比较复杂,这里给出一些指点:

开源。有大量的 开源许可证 可供选择。

通常,这些许可证属于以下这两类中的一种:

  1. 许可证更多地聚焦于用户按照其意愿使用软件的自由(这类许可证更加宽容,例如MIT、BSD以及Apache)。
  2. 另一类许可证更多地聚焦于确保代码本身 — 包括对代码任何的修改和分发 — 总是保持自由开放(这类不那么宽容的许可证包括GPL以及LGPL)。

后一种许可证不允许用户在软件上添加代码却在分发时不包含这部分更改的源码(译者注:即作出的更改必须也开源),就这点而言,显得不太宽容。

为了帮助你给自己的项目选择一个合适的许可证,这里有一份 如何选择许可证参考下吧

更加宽容的许可证

  • PSFL (Python Software Foundation License) – 用于Python本身
  • MIT / BSD / ISC
    • MIT (X11)
    • New BSD
    • ISC
  • Apache

不那么宽容的许可证

  • LGPL
  • GPL
    • GPLv2
    • GPLv3

tl;drLegal 是一份许可证概览,里面解释了用户在使用一个特定软件时能做什么、不能做什么以及必须做什么。