怎样看开源代码版权_版权声明在开源代码中泛滥成灾
怎样看开源代码版权
⼀天,我在查看并注意到顶部有版权声明。 现在,我绝对不想选择尼古拉斯。 OpenStack⽂档和代码中有数百种此类版权声明,⽽这只是我碰巧看到的⽰例。
(请注意,我的雇主在OpenStack代码中拥有其版权声明的份额。⼏乎所有参与OpenStack的公司都这样做。我认为我们应该停⽌。)
我向OpenStack-docs列表发送了⼀个便笺,它⽣成了⼀个 。 据我了解,我们⿎励⼈们将版权声明放⼊贡献的源代码和⽂档中,并在他们修改的⽂件中添加版权⾏。
我认为这是⼀件⾮常不好的事情,原因如下:
如果我编辑⼀个⽂件,并在顶部说该⽂件是BigCo版权所有,那么我就不建议编辑该⽂件,因为这暗⽰着我会踩在别⼈的脚趾上。 ⽂件不应有任何迹象表明它们由任何⼀个⼈或公司“拥有”。 ( “拥有”代码的更多信息, Karl Fogel的⽂章。)这积极地阻⽌了⼈们投⼊并修复某些东西。
如果N个⼈为⼀个⽂件做出贡献,那么我们应该在⽂件中包含N个版权声明吗? 这不会随着时间推移⽽扩展。 想象⼀下,从现在开始⼗年后,这些⽂件将是什么样,现在就解决问题。
在⽂件中包含作者姓名会⿎励⼈们出于错误的原因做出贡献。
Git跟踪谁做出了哪些更改。 不需要明确的版权声明。
对我⽽⾔,第⼀个原因是最引⼈注⽬的。 应当尽量避免任何阻碍贡献的事情,尤其是对于初学者⽽⾔。
当遇到源代码中的版权声明时,有⼈问我在提交补丁之前是否必须征得该⼈的许可。 如果我们什⾄可以避免⼀个⼈问这个问题,那么我们已经为该项⽬提供了服务。
我还担⼼那些坚持在稿件中声明版权声明的公司既不理解版权法也不理解开放源代码。 ⼀⽅⾯,Git中的审核记录可以保护您的贡献记录,从⽽保护您的版权。 另⼀⽅⾯,如果您的版权对您如此重要,那么也许您不应该将其贡献给⼀个开源项⽬。 对⼀个项⽬说他们可以做出贡献是反社区的,但前提是您必须断⾔这是您的个⼈财产。 开源与社区和协作有关。 如果建筑物是社区所有,那么坚持坚持使⽤特定的砖块,您会得到什么?
在Apache软件基⾦会,⼗年前,我们进⾏了辩论,并决定源代码中的author标签是反社区的,因此不⿎励使⽤。 引⽤当时的评论主题,尤其是引⽤Sander Striker:
在Apache软件基⾦会,我们不⿎励在源代码中使⽤author标记。 除了法律后果外,还有多种原因。 协作开发是关于作为⼀个⼩组进⾏项⽬并作为⼀个⼩组来关⼼项⽬。 给予信任是好事,应该这样做,但要以
不允许误导甚⾄暗⽰的⽅式进⾏。 没有何时添加或删除作者标签的明确⾏。 更改评论时是否添加姓名? 当您进⾏单⾏修复时? 重构代码时,您是否删除了其他作者标签,看起来与其他标签有95%的差异? 您对要接触每个⽂件的⼈该怎么办,要对其进⾏⾜够的更改以使虚拟作者标签具有⾜够的配额,以便他们的名字⽆处不在?
有更好的信贷⽅式,我们更喜欢使⽤信贷。 从技术⾓度来看,作者标签是不必要的; 如果您想找出谁编写了特定的代码,可以参考版本控制系统来解决。 作者标签也趋于过时。 您是否真的想私下联系您五年前编写的⼀段代码,并很⾼兴被遗忘了?
这是⼀个稍有不同的问题(作者标签⽽不是版权声明),但观点完全相同。 更正⽂档中的语法或拼写时是否添加版权声明? 当我添加⼀个段落或对句⼦重新排序以提⾼清晰度时怎么样? 在什么时候我删除了您的版权声明,因为我已经对该⽂件做了很多更改?
然后,当然,您应该考虑更⼤的问题-您为什么在乎? 您要防⽌什么? 如果您试图保护⾃⼰的贡献不被社区占⽤并⽤于其他⽬的,那么贡献Apache许可的代码库也许不是最明智的选择。
最初发布 。经许可重新发布。
怎样看开源代码版权