Fork

Aus JsWiki.de
Wechseln zu: Navigation, Suche
Datei:GitHub Fork Button.png
Der populäre Code-Hosting-Dienst GitHub bietet eine integrierte Fork-Funktion

Ein sogenannter Fork (englisch für Abspaltung bzw. Abgabelung) ist eine Abspaltung eines Softwareprojektes in ein neues Projekt, welches unabhängig davon weiterentwickelt wird.

Forks finden vor allem bei Open-Source-Projekten statt, da hier der Quellcode für jeden frei zugänglich ist und somit von jedermann geforkt werden kann.

Gründe für die Entstehung von Forks[Bearbeiten]

Die häufigsten Gründe für Entstehung eines Forks sind bei größeren Projekten unter anderem Unzufriedenheiten mit der Projektführung, dem Versions-Fortschritt oder zunehmender Kommerzialisierung.

Ein weiterer häufiger Grund, vor allem bei kleineren und/oder durch einzelne Entwickler gepflegte Projekten, ist die Entwicklungseinstellung durch den Projektleiter. Inaktive Projekte, bei denen jedoch eine an dem Projekt interessierte Community existiert, werden dann zugunsten zukünftiger Entwicklungen in der Regel unter einem anderen Namen weiterentwickelt.

Rechtliche Situation[Bearbeiten]

Da Forks mit einer Kopie des Originalprojektes beginnen, muss der Quellcode des ursprünglichen Projektes in der Regel unter einer entsprechenden Lizenz stehen, damit diese Abspaltung urheberrechtlich einwandfrei ist. Wikipedia schreibt zur rechtlichen Situation folgendes:

Im Urheberrecht, das auch für Software gilt, hat der Begriff Derivat genau dieselbe Bedeutung wie in allen anderen Bereichen. Das bedeutet zum Beispiel, dass ein Derivat einer Software, solange keine Autorisierung durch die Rechteinhaber der Software gegeben ist, nur unter bestimmten Bedingungen (z. B. Fehlerkorrektur) erstellt (vom Land abhängig, z. B. durch EU-Richtlinien reguliert) und insbesondere nicht verbreitet werden darf. D. h. solange die Lizenz einer Software nicht explizit erlaubt, dass Derivate erzeugt bzw. verbreitet werden dürfen, ist dies verboten. Diese spielt auch im Fall SCO gegen Linux eine gewichtige Rolle, denn SCO hat AIX sowie auch den Linux-Kernel mit Systemsoftware zu unautorisierten Unix-Derivaten erklärt. Obwohl es zwar strittig ist, ob SCO diese Rechte überhaupt hat, kann SCO, solange sich kein urheberrechtlich geschützter Quelltext im GNU/Linux-System findet, keinen Schuldspruch, z. B. für einen Linux-Distributor, auf Basis des Urheberrechts erwirken.

Außerdem sind gegebenenfalls Markenrechte an dem Namen des ursprünglichen Projektes zu beachten.

Bekannte Beispiele[Bearbeiten]

Im Bereich rund um JavaScript sind unter anderem folgende Forks bekannt:

  • io.js, eine Abspaltung der serverseitigen JavaScript-Plattform Node.js, die aufgrund von Unzufriedenheiten mit der Projektverwaltung und dem Tempo der Entwicklung aufkam
  • Konva.js, ein Fork der Canvas-Bibliothek KineticJS, der innerhalb weniger Tage nach der Projekteinstellung durch den ehemaligen Leiter entstanden ist. Anfänglich wurde dieser Fork noch unter gleichen Namen fortgeführt[1], dieser wurde später jedoch in Konva.js umbenannt.[2]

Weiterführende Links[Bearbeiten]

Einzelnachweise[Bearbeiten]

  1. 5.1.9 · konvajs/konva@07622b6 (auf github.com)
  2. Renaming · konvajs/konva@607ef18 (auf github.com)