何时在道德上可以fork别人的GitHub代码并继续使用?

109次阅读
没有评论

问题描述

想知道何时可以在道德上fork别人的GitHub代码并继续使用。他提到了一个例子,一个GitHub仓库已经很久没有维护了,他想知道是否可以将其fork并发布到Ansible Galaxy等地方。

解决方案

请注意以下操作注意版本差异及修改前做好备份。
根据MIT许可证,你可以在法律上fork任何GitHub上的代码,并在许可证允许的范围内做任何你想做的事情。这就是开源和宽松许可证的意义所在。原始作者希望全世界都能为这个软件做出贡献,而你将正是在做这件事。

以下是解决方案的步骤:
1. Fork这个GitHub仓库。这将创建一个你自己的副本,你可以在其中进行修改和扩展。
2. 遵守许可证的要求,并在你的修改中保留原始许可证和版权声明。
3. 如果你认为你的修改有所改进,可以向原始作者发送pull request,以便他可以选择是否接受你的修改。但这是可选的,你既没有法律上也没有道德上的义务这样做。

关于将代码上传到其他位置(如Ansible Galaxy),主要问题可能是避免因名称被”替换”而引起的烦恼(但我认为如果原始作者已经将其上传到Ansible Galaxy,你无法替换它)。所以,在后一种情况下,只需使用另一个名称上传即可,该名称仍然可以轻松识别为与原始代码相关的,例如,添加一些不太显眼的后缀。

如果原始作者在你上传代码到Ansible Galaxy之后重新出现,并且他想接管代码,那么你们可以通过沟通解决这个问题(例如,合并两个fork并决定谁继续更新Ansible Galaxy)。很可能他会很乐意将工作交给你。

总之,从法律和道德的角度来看,这是一个完全清晰的问题。你可以自由地fork和使用别人的代码,而不需要法律或道德上的强制要求。

请注意,这个软件是根据MIT许可证发布的。以下是许可证的内容:

在此授予任何获得本软件及其相关文档文件(以下简称“软件”)副本的人免费使用的权限,以处理该软件,包括但不限于使用、复制、修改、合并、发布、分发、再许可和/或销售该软件的副本,并允许接收软件的人这样做,但需遵守以下条件:

正文完