GPL 不是按文件的 copyleft 许可,而是按整个软件包的许可。
所以新文件也应该在 GPL 下获得许可。由于原始许可标头没有指定 GPL 版本,您可以选择您喜欢的任何 GPL 版本。如果您想了解更多关于为什么有多个 GPL 版本以及它如何与升级许可证版本一起使用的更多信息,请参阅:
因此,在澄清许可版本后,您会询问版权声明以及将您的姓名放在哪里。我不是你的律师,作为一名软件开发人员在这里发言,要从所有角度完全回答这个问题并不容易,所以我试图概述我对我认为发挥作用的部分的理解。
根据版权,您将多位作者的多部作品汇集在一起。您正在创建一个组合作品。对于版权意义上的每件作品,您都有作者和版权所有者。
对于合并后的作品,您也拥有此版权,然后合并。
所以对于单个文件,如果你是自己写的,假设是 2012,因为你是作者,你可以写你自己的版权标题:
/**
* My Extension to some open source application
*
* Copyright 2012 by Tobias Eriksson <author@tobier.se>
*/
如果该文件位于您的硬盘驱动器上,那将是完全可以的。然后你想分发它,所以明确许可证是明智的。假设您选择了 GPL-3.0+。遵循指导方针
和一些评论/文档块标记指南:
您可能希望使用车牌扩展它,如下例所示:
/**
* My Extension to some open source application
*
* Copyright 2012 by Tobias Eriksson <author@tobier.se>
*
* This file is part of some open source application.
*
* Some open source application is free software: you can redistribute
* it and/or modify it under the terms of the GNU General Public
* License as published by the Free Software Foundation, either
* version 3 of the License, or (at your option) any later version.
*
* Some open source application is distributed in the hope that it will
* be useful, but WITHOUT ANY WARRANTY; without even the implied warranty
* of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with Foobar. If not, see <http://www.gnu.org/licenses/>.
*
* @license GPL-3.0+ <http://spdx.org/licenses/GPL-3.0+>
*/
此牌照可确保接收文件的人可以看到此文件在哪个许可证下,他们对代码拥有哪些权利。他们还可以通过您的版权声明看到原作者。在我看来,这里最重要的部分是明确:a)谁是作者/版权持有者,b)什么是许可证。这样这些信息就不会丢失,是可见的。如果您想遵循由您决定的建议。为了不削减您自己的作者的权利,我强烈建议您至少保留您的姓名,即使根据法律这不是必需的(但如果您不这样做并且其他人将她放在以后,您将无法记录您的作者身份里面有名字)。
所以现在您可以建议将此文件添加到上游。这是迄今为止您第一次接触到该软件的原作者。他们可能有自己的做事方式,可能更喜欢自己的标题等。所以你离开了法律基础,进入了一个社交领域,合作,一起工作。
您可以事先询问在项目内部如何管理它,通常有多种方法可以做,两种常见的方法是:
当项目开始时,每个文件的方法很方便。当项目变得更大时,中心方法很方便。
每个文件的方法在上面有所概述,它需要跟踪每个文件的许可和版权/作者信息的变化。
在一个中心方法中,一个公认的过程是有一个所谓的 AUTHORS(可能还有一个 CONTRIBUTORS)文件,列出软件的作者,并有一个包含许可证的 COPYING 文件(如果它是整个软件包的单个文件,否则主要许可证加上附加许可证)。
也可能发生两种概念混合在一起的情况,例如,整个包都在 GPL 下,但在代码库中也有 MIT 或 BSD 类型许可证下的代码。然后,您应该保留这些部分的许可证信息,以便将这些部分的更改返回给上游。此外,应该让为这些部分做出贡献的作者意识到他们需要在 MIT / BSD 下许可他们的更改,并保留该部分的许可。如果您想了解更多相关信息以及有关如何以及在何处记录许可的一些详细信息,请阅读以下内容:
然后,中心方法允许减少每个文件顶部的版权标题和牌照:
/**
* Some open source application
*
* Copyright 2010, 2012 by it's authors.
* Some rights reserved. See COPYING, AUTHORS.
*/
如果您正在寻找信息压缩并且作者可以在每个文件中看不到他们的名字。你不能用超级巨星做到这一点,真的。所以可能会有一个社会排名,谁的名字排在第一位等等。但是不要让自己被愚弄:如果你是作者,你有权看到你的名字。如果有人否认你的权利,你就是被骗了。正如您可以想象的那样,这也说明了很多关于(免费)软件项目中的尊重。
从技术上讲,您在顶部添加您的版权行是完全可以的,因为是您进行了最新的更改。许可证只告诉你需要保留原始版权,而不是你需要把它放在上面:
/**
* Some open source application
*
* Copyright 2012 by Tobias Eriksson <author@tobier.se>
* Copyright 2010, 2011 by Scruffy H. Hacker <scruffy@foo.bar>
*
* Licensed under GNU General Public License 3.0 or later.
* Some rights reserved. See COPYING, AUTHORS.
*
* @license GPL-3.0+ <http://spdx.org/licenses/GPL-3.0+>
*/
可能是此类许可证/版权标头文档块的更常见/真实示例。记住要始终像对待自己的作者一样尊重其他作者。这通常在合作项目中效果最好,法律方面除外。当事情不再内联时,您只需要法律文件。
另见: