如何显示/阐明博客中的代码许可


10

假设我有一个使用知识共享许可的博客。此类许可证将显示在每页底部,并带有指向实际许可证的链接等。

但是,显然,知识共享许可并不真正适合于软件或源代码的分发,那么,可以成为博客文章一部分的任何代码(例如,片段/片段甚至完整程序)怎么办?

如果我选择以GPLv3的形式发布此代码,那么在页面底部是否可以接受并且足够清楚地表明:“ Foo先生的此网站是根据知识共享而发布的,除了任何源代码片段/片段/样本形式的源代码,这些代码在GPLv3下发布

还是有更好/不同/更正式的方式来澄清这种情况?


2
您想从CC转到GPLv3?布莱克 无论如何,GPL都包含有关其使用和应用的详细说明;参见gnu.org/licenses/gpl-howto.en.html
罗伯特·哈维

1
我不想从CC转到GPLv3,我只是想找到一种适当的方式来使博客显示涉及的2个许可,一个许可用于博客内容(例如文本)等(在CC下发布),另一个一个用于其中包含的代码段(可以在GPLv3下发布)。那是因为我不能用相同的许可证发布所有内容。
mguassa

那反过来呢?您将如何使用缺少许可证的代码段?只提及来源?我猜这很大程度上取决于您的项目法律地位(商业/ oss /学术界等)
robi

Answers:


12

通常,面向开发的网页上存在三种类型的内容,这些内容可能由不同的许可证涵盖:

  • 文字内容本身,即博客文字,

  • 源代码,

  • 视觉设计(设计本身和图形元素,例如徽标)。

我在许多网站(例如)上使用的以及也可以用于博客的是类似于以下内容的标题:

版权所有©2015 Example Corp.保留所有权利,但以下列举的部分除外:

这实际上意味着:

  • 内容和代码受两个不同的许可证保护,
  • 未明确提及的所有其他内容均保留所有权利。

注意:

  • 如果您博客上的代码段很小,则很有可能不需要特定的许可证(即使有特定的许可证,读者也会将其驳回,并且无论如何您都无法强制执行其条款)法庭)。

    例如,此MSDN文章中的摘录很难被许可所涵盖:从未读过该文章的任何人都可以自己编写完全相同的代码,并且几乎不可能向法官证明代码实际上是复制粘贴的。

  • 如果您博客上的代码段很大,则许可证可能包含在标题中。不是全文(请不要这样做;文件标题中的使用大写字母表示的许可非常难看),而是最后提到链接的提及。与在页面页脚中提到许可证相比,这有一个好处:如果代码被复制粘贴,则许可证保留的机会更大。

    /**
     * Author: Somebody <somebody@example.com>
     * Original source: http://blog.example.com/123/
     * License: BSD 3-Clause License (http://opensource.org/licenses/BSD-3-Clause)
     **/
    // Code goes here.
    

另外,如果您希望实际使用代码,请考虑使用不同于GPL的许可。由于GPL是非常严格的许可,因此可能不适合您博客中放置的代码段。


谢谢,这正是我想要的。您能否提出一些我可以用于此类代码(代码段)而不是GPL的许可证?
mguassa

2
@mguassa:您可能对opensource.org/licenses网站感兴趣。例如,BSD-2和BSD-3,Apache许可证2.0和MIT许可证就可以了,因为它们可以在专有和/或封闭源代码产品中使用代码。如果不确定哪个牌照最适合您,请针对您的具体情况咨询律师。
阿森尼·穆尔琴科

2

您可以将代码段保存在带有其自己的LICENSE文件的在线存储库中,以便人们知道如何重用它。您还可以将代码片段编写为Github Gists,然后将其嵌入到博客文章中:由于每个Gist可以具有多个文件,并且您可以分别嵌入它们(如本SO答案所述),因此可以在其中添加单独的许可证文件。每个要点,或具有多个代码段的单个大要点。


谢谢,感谢您的建议,这也是我可以考虑的。已投票。
mguassa

1

除非您禁止它,否则根据知识共享许可对代码进行许可不会有任何危害。例如,这将允许用户将代码包含在Stack Exchange帖子中(例如,在给出Stack Overflow的答案时)。

此外,您可以使用一种或多种不同的(软件)许可(例如GPLv3)来许可所有代码段。

然后,使用您的代码段的用户可以选择要遵循的单个许可证(已授予您的许可证)。

您如何沟通/显示可用许可证的方式取决于您。这主要取决于您要如何描述它。例如,您可以添加信息

  • 在您网站的“关于”页面上,和/或
  • 在每页的页脚中,和/或
  • 每个代码段下方,和/或
  • 使用RDFa在标记中(使其可机读)。
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.