本文最后更新于 2024-09-08,文章内容可能已经过时。

  • GPLv1(GNU通用公共许可证第1版

    • 发布于1989年,是第一个版本。

    • 强调了自由软件的四项基本自由:使用、研究、修改和分发。

    • 其主要特点是要求所有基于GPL软件的修改版也必须以GPL发布,以确保所有修改后的软件也能保持自由。

  • GPLv2(GNU通用公共许可证第2版

    • 发布于1991年。

    • 改进了一些不明确的条款,使得许可证更加清晰。

    • 增加了对软件专利的处理,防止了对GPL软件的专利诉讼。

    • 仍然要求衍生作品也要以GPL发布,但对一些使用方式的限制不如后来的版本严格。

  • GPLv3(GNU通用公共许可证第3版

    • 发布于2007年。

    • 引入了针对数字权利管理(DRM)的条款,限制了对软件的某些使用方式(如强制性DRM)。

    • 改进了对软件专利的条款,提供了更多保护。

    • 增强了对反向工程的保护,确保用户能够对软件进行研究和修改。

  • AGPL(GNU Affero通用公共许可证

    • 发布于2007年,基于GPLv3但增加了对网络应用的条款。

    • 要求如果基于AGPL许可的软件在网络上提供服务(例如作为Web应用程序),则用户也应能获得源代码,即使他们没有直接获取到软件副本。