如何开始一个新的开源项目(2)

发表于:2013-01-14来源:开源中国社区作者:oschina点击数: 标签:开源
顶 翻译的不错哦! GNU宽通用公共许可证是一种GPL更加宽松的版本。基于LGPL授权的组件可能关联到程序,但是程序本身并不必开源或者基于GPL或LGPL授权,换

  顶 翻译的不错哦!

  GNU宽通用公共许可证是一种GPL更加宽松的版本。基于LGPL授权的组件可能关联到程序,但是程序本身并不必开源或者基于GPL或LGPL授权,换句话说,LGPL和GPL相似,因此任何派生作品也必须开源。

王政

  王政

  翻译于 8天前

  0人顶

  顶 翻译的不错哦!

  MIT

  亦被称为X11协议。该协议相对宽松,对于使用该协议的项目,协议的遵循者必须自动放弃对该项目代码发布权以及使用权的私有,而赋予公众相应权利。因此,遵循MIT协议的代码或许被会被引用在一些没有声明遵循某项协议的特定代码中。此外,MIT协议与GPL协议兼容,所以你完全可以用MIT协议下的代码来开发GPL协议的应用。

王政

  王政

  翻译于 8天前

  0人顶

  顶 翻译的不错哦!

  BSD3

  协议有点松,有点松……该协议相对宽松,对于使用该协议的项目,协议的遵循者必须自动放弃对该项目代码发布权以及使用权的私有,而赋予公众相应权利。此外,项目中任何以二进制形式发布的代码(译者注:貌似.bin文件之类的),也需要在许可文档中声明该协议。那么,该协议与MIT协议的区别在哪里呢?当该协议的标的物(译者注:一般,这里的“标的物”是声明使用该协议的代码,为了保证严谨性,在此进行注释)被其他人使用时,他们不可以用该标的物的所有权人的名字进行商业宣传。例如,如果我写了一段遵循该协议的代码,而你把他用着自己的应用里面,你是不可以用哥哥我的名字去做宣传的,除非经过我的同意。最后,BSD3协议也是和GPL兼容的。

  好吧,其实还有很多开源协议本文没有介绍,但是以上协议应该是最受大家关注的。

open-source

  图片版权所有:opensourceway.

erichua23

  erichua23

  翻译于 9天前

  0人顶

  顶 翻译的不错哦!

  需要注意的一点是 Creative Commons许可证并非设计来于软件的. 所有的 Creative Commons许可证都是为"创造性工作"制定的, 例如音频, 图像, 视频和文字. 制定 Creative Commons 的组织他们自己也不推荐将 Creative Commons许可证用于软件, 应该在软件中使用专门为软件制定的许可证, 通常也就是上文讨论的四种.

erichua23

  erichua23

  翻译于 9天前

  0人顶

  顶 翻译的不错哦!

  因此, 你应该选择哪个许可证呢? 这点大部分由你想别人怎么使用你的代码决定. 因为LGPL, MIT 和 BSD3都和GPL完全兼容, 这还不是最需要关注的. 如果你想所有你软件的修改版本都只被用于开源软件, 那么你应该选择GPL. 如果你的代码是设计成一个不需要修改而可以直接引入别人的项目使用的组件, 那么你可能会考虑LGPL. 否则, MIT和BSD3许可证时比较通常的选择. 个人比较趋向于喜好MIT许可证, 而商业上可能更加的偏向于喜好BSD3许可证以保证他们的公司名称不会被未授权的使用.

erichua23

  erichua23

  翻译于 9天前

  0人顶

  顶 翻译的不错哦!

  为了帮助你做决定, 看一下这些流行的开源软件项目都使用了些什么协议:

  jQuery: MIT license

  YUI: BSD3 license

  Dojo Toolkit: dual-licenced under BSD3 and Academic Free License

  Backbone: MIT license

erichua23

  erichua23

  翻译于 9天前

  0人顶

  顶 翻译的不错哦!

  另外一个选择就是直接把你的代码发布为 public domain(公有领域), 在 public domain中的代码没有版权拥有者, 这些代码可以完全随意使用. 如果你没有打算保持你对代码的控制全 或者 你只是想向世界分享你的代码而不打算持续开发它, 那就可以考虑一下把代码发布到 public domain.

erichua23

  erichua23

  翻译于 9天前

  0人顶

  顶 翻译的不错哦!

  想进一步了解许可证与它们相关的法律问题以及这些许可证如何工作, 请阅读 David Bushell的 Understanding Copyright and Licenses.

erichua23

  erichua23

  翻译于 9天前

  0人顶

  顶 翻译的不错哦!

  代码组织

  决定在你的开源项目中使用何种许可证以后, 这几乎是时候把你的代码放出来了. 但是在这之前, 你得先看看代码是怎么组织的. 不是所有代码都会得到大家的贡献. 如果一个潜在的贡献者无法通读你的代码, 那么他非常可能也没法做出任何贡献. 在你分享你的代码给公众之前, 你组织代码的方式, 包括文件目录结构, 代码风格都是需要认真考虑的因素. 别随意把你胡乱写的代码扔出来. 多花点时间考虑别人可能会怎么阅读你的代码以及他们在这过程中可能会遇到什么问题.

原文转自:http://www.ltesting.net