Forking (software fork)

Forking is het nemen van de broncode van een open source softwareprogramma en het ontwikkelen van een geheel nieuw programma.

Forking is vaak het gevolg van een impasse in een open source project die zo onoverkomelijk is dat al het werk stopt. Dit gebeurt meestal wanneer leden van het ontwikkelingsteam er niet in slagen persoonlijke conflicten op te lossen of geen consensus kunnen bereiken over de volgende stappen. Vorklicken kunnen ook optreden wanneer kernleden van een open source-ontwikkelteam besluiten zich niet bezig te houden met gebruiksmogelijkheden die andere leden van de ontwikkelgemeenschap belangrijk vinden.

Softwarevorken kunnen controversieel zijn wanneer ze inspanningen dupliceren, maar de meeste ontwikkelaars zijn het erover eens dat het recht om te forken de grootste kracht van open source-software is. Een succesvolle fork kan ontwikkeltijd besparen, inspireren tot andere toepassingen voor oude code en nieuwe zakelijke kansen creëren. Om als fork te worden beschouwd, moet de nieuwere versie van de software een eigen naam en een eigen ontwikkelaarsgemeenschap hebben. Wanneer een nieuw programma compatibel blijft met het oorspronkelijke programma, spreekt men van een ondiepe vork.

De naam vork is afgeleid van de POSIX-standaard voor besturingssystemen. In deze context is een fork een proces dat een kopie van zichzelf genereert.