Open source 在GPL许可下提供开源软件是一个好主意吗?

Open source 在GPL许可下提供开源软件是一个好主意吗?,open-source,licensing,fork,Open Source,Licensing,Fork,我想要一个具有一系列需求的软件,但我不想重写基本框架,因为它在GPL许可证下的少数开源软件中可用。当我开始一个开源项目时,我需要调查哪些事情?我可以拥有分叉软件的任何权利吗 您必须以相同的GPL版本(或更新版本,如果特定项目许可证允许)分发该文件,并提及原始作者 只有在版权所有人同意的情况下,您才能使用不同的许可证。通常,正确的做法是与社区合作,将您的修改纳入核心项目,您可以与他们分担维护成本。然而,由于各种原因,这可能并不总是可能的(例如,社区不想朝你想去的方向走,或者社区没有反应) 如果您选

我想要一个具有一系列需求的软件,但我不想重写基本框架,因为它在GPL许可证下的少数开源软件中可用。当我开始一个开源项目时,我需要调查哪些事情?我可以拥有分叉软件的任何权利吗

您必须以相同的GPL版本(或更新版本,如果特定项目许可证允许)分发该文件,并提及原始作者


只有在版权所有人同意的情况下,您才能使用不同的许可证。

通常,正确的做法是与社区合作,将您的修改纳入核心项目,您可以与他们分担维护成本。然而,由于各种原因,这可能并不总是可能的(例如,社区不想朝你想去的方向走,或者社区没有反应)

如果您选择叉子,那么您将负责叉子的维护。这意味着将资源用于与捐助者的“上游”项目保持一致,以便能够在未来进行清洁升级。在许多情况下,这样做所涉及的努力与上游合作的努力一样大,甚至更大

许多项目都是使用插件来提供额外功能的。如果可能的话,这是一条比分叉更好的路线

就fork上的权限而言,除了GPL下分配给您的代码外,您对原始代码没有任何权限。如果您分销您的货叉,您必须根据GPL进行分销(其他许可证提供分许可权,但GPL不提供)。您将保留修改的版权,但必须在GPL下分发


总之,如果你能避免分叉,你应该这样做。你是否可以避免它取决于管理项目的社区的健康状况。

如果你阅读GPL,你会发现你在使用或分叉软件时拥有哪些权利(和义务)…至于分叉是个好主意,如果更改很小并且“感觉不错”,也许可以先尝试将它们引入原始项目。当然,“私用叉子”不会伤害任何人,github这样的系统也鼓励这种做法。让他们很容易看到你在做什么,让你回溯到上游。想想看,这正是开源软件的用途:允许你修改软件以满足你的个人需求。当然,对于GPL,当你发布软件时,你必须分享这些修改(这样你的用户就可以享受与你一样的自由)。我投票将这个问题作为离题来结束,因为它是关于许可或法律问题,而不是编程或软件开发。有关详细信息,请参阅。您只能在GPL下分发它。你不能在没有得到所有其他版权所有者同意的情况下提供其他许可证。@Thilo:这和我写的完全一样?我只是想强调,例如,除了按照GPL分发许可证之外,你不能提供商业许可证。这是一种常见的开源商业模式,但只有原始版权所有者才能做到这一点,而不是叉子。好吧,也许措辞有点混乱,我将编辑答案:)。+1用于解决标题中的“这是个好主意吗?”。通常情况并非如此。