叉子(软件)
什么是分叉(软件)?
软件内分叉是指由使用另一个软件包的源副本的开发人员创建一个全新的项目。分叉为软件创建了一条新路径,将其分成不同的版本。在开源社区中,分叉非常常见,并且通常被认为是积极的。
当大量开发人员为了改进项目并可能取代它而向不同方向分支时,通常会发生分叉。
开发人员首先从软件包中获取课程代码的合法副本,然后开始自己的开发,创建软件的新版本。免费和开源软件使这成为可能并且合法,并且不违反任何版权法。这意味着此类软件可以合法分叉,无需事先获得管理分发软件项目的人员的任何许可。然后,我们的想法是发布您的改进,以便整个社区都能从中受益。
虽然分叉被视为自由的象征,会带来有用的更新,但分叉经常会因为开发者社区之间的冲突而发生,从而引发对立的观点。最大的开发者群体通常是那些保留原来的名称并坚持用户社区的人。软件分叉可能会分裂开发者社区,这种分裂要么是友好的,要么充满怨恨。
竞争项目还可能意味着开发人员不再与继任者共享代码,从而导致未来的合法性、所有权和方向问题。
与自由和开源软件不同,专有软件由拥有专有合法权利的版权所有者许可。仅当版权所有者已授予许可并且需要分叉来创建该软件的新版本时,才可以对此类软件进行分叉。