Joe*_*Joe 8 version-control licensing open-source dvcs
假设我拥有一些没有许可证信息的开源项目.此外,假设没有人公开贡献,所以我拥有该项目的源代码和版权.
假设源代码已在线托管.如果我决定通过将相关的COPYING文档上传到存储库并相应地调整源文件来给它一个开源许可证,那么该项目的先前版本是否也会获得许可?或者当前版本和未来版本会受到保护,而以前的版本属于公共领域吗?
或者,假设我在本地计算机上使用DVCS(例如Mercurial)开始一个新项目.我提交了所有更改(本地),然后在以后的更改集中添加许可证信息.如果我要托管项目/存储库,整个历史记录是获得许可还是只有该变更集之后的版本?
在(2)中,项目最初没有托管,因此这似乎不是问题.但是一旦上传,项目的一些历史记录将不包含许可证信息,使得结果看起来几乎与(1)完全相同.
我问,因为谷歌代码允许您选择新项目的许可证,即使您打算以后导入存储库,使许可看起来有点外部实际源代码,而bitbucket.org则不然.
如果您希望许可证适用于整个历史记录,只需在许可证文件中说明即可,例如“此文件是在修订版 x 中添加的,但您可能会认为该许可证也适用于 x 之前的所有修订版”。
您可以将其视为声明其涵盖内容的许可证... legalbol 是代码,如果您愿意,可以明确范围。