直到将Apache许可证的源代码上传至GitHub
因为猫和杓子都是MIT许可证,所以感觉上是一样的…
-
- 自作ソースコードに、MITライセンスを適用する3つのやり方 | オープンソース・ライセンスの談話室
-
- MITライセンスのソースコードをGithubにあげるまで
- CC0ライセンスのソースコードをGitHubにあげるまで
Apache License 是什么?
这是由Apache软件基金会提供的产品的软件许可证。它与BSD许可证大致相同(也就是与MIT许可证相同),但授权范围更为明确。
-
- Apache License, Version 2.0
- 日本語訳 licenses/Apache_License_2.0
这篇文章不是很长,所以我认为最好还是把全文都读一遍。不过它比MIT许可证要长好几倍。
我认为与MIT许可证等简短许可证相比,差异如下。
-
- 用語の定義が明確
-
- 特許の許諾が含まれる
- Submission of Contributions(コントリビューションの提出)条項がある
由于作者本身并没有专利,所以与此无关,但作为用户来说,这是一个可靠的元素。
在GitHub中,”提出贡献” 对应于”Pull Request”。
GitHub是一种通过源代码进行沟通的社交网络,但实际上,Pull Request和版权之间的关系经常存在模糊的操作。因为Apache许可证已经纳入了这一点,所以我认为它是非常适合GitHub的许可证。
做事
-
- 获取Apache许可证的原文
-
- 将其记录在README.md中
-
- 在源代码开头处加上许可证声明
- 上传至GitHub
获取Apache许可证的原始文本
请确保使用 Apache License 的最新版本(2.0 或更高版本),因为有多个版本可供选择。
原始文本版本的文件在 https://www.apache.org/licenses/LICENSE-2.0.txt 上可以找到。
curl https://www.apache.org/licenses/LICENSE-2.0.txt > LICENSE
在README.md中写入
在其他人的文章中写过的,我复制粘贴了一下,但是到目前为止,在公开的存储库中没有看到在README.md中标明许可证的情况…
版权
查看./LICENSE
记录器的守卫对象用于调试。
版权所有(c)2015 USAMI Kenta <tadsan@zonu.me>
类似这样,版权声明和”将授权文件附上”的内容已经写明。
因为这是我在做的事情,所以我觉得大家可以自由地去做。
在最近的包管理仓库如npm和packagist中,它们允许在配置文件如package.json、composer.json、bower.json中记录许可证信息,因此我们在这里明确声明许可证。
只需要在代码中加入”license”: “Apache-2.0″这行就可以了。
这个例子可以在以下网址找到: https://github.com/zonuexe/php-logger-guard/blob/master/composer.json
在源代码的开头添加许可证声明。
在源代码开头写上许可证块是确保的。
<?php
/**
* Copyright [yyyy] [name of copyright owner]
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
然而,由于在所有文件中都写这个是很麻烦的,因此作者在PHP中使用PHPDoc格式来表示这样的情况。
<?php
/**
* Guard object of Logger for debugging
*
* @package Baguette\Application
* @author USAMI Kenta <tadsan@zonu.me>
* @copyright 2015 USAMI Kenta
* @license https://www.apache.org/licenses/LICENSE-2.0 Apache-2.0
*/
final class Guard implements Log\LoggerInterface
{
最初的表述是关于《附录》内容的,所以并不意味着“只有按照字面意思书写才适用许可证”。总之,我认为只要有版权所有者和许可证的说明就足够了。
将其上传到Github
如果添加上述文件README和LICENSE然后进行git push就可以了呢 ヾ(〃><)ノ゙
最后吐槽
用Apache许可证代替MIT许可证也不错。
下一次我们会告诉你
多功能语言处理 (MPL)
有趣的是,LibreOffice与分裂出来的OpenOffice.org被捐赠给了Apache项目,成为了”Apache OpenOffice”。