Wat is forken?

Een repository forken betekent dat je een kopie maakt van een bestaande repository naar je eigen GitHub-account. Dit wordt vaak gebruikt wanneer je wilt bijdragen aan een open-source project of onafhankelijk wilt werken met de code van iemand anders.

Casus

Een programmeur heeft een idee voor een nieuwe functionaliteit in een bestaande open-source applicatie. Hij wil een nieuwe feature toevoegen aan de Open-Source Markdown-Editor.

  1. Huidige situatie
  • Er is een open-source project op GitHub: een webgebaseerde markdown-editor.

  • De editor ondersteunt basisopmaak zoals koppen, lijsten en vetgedrukte tekst.

  • De programmeur wil een live samenwerking-functie toevoegen, zodat meerdere gebruikers in realtime kunnen bewerken.

  1. Forken van de repository
  • De programmeur maakt een fork van de originele repository naar zijn eigen GitHub-account.

  • Hij clonet de repository naar zijn lokale machine en begint met ontwikkelen.

  1. Implementeren van het idee
  • Hij voegt WebSockets toe om wijzigingen direct te synchroniseren tussen gebruikers.

  • Hij past de UI aan zodat meerdere cursors zichtbaar zijn, net als in Google Docs.

  1. Keuzes na de implementatie
  • De programmeur wil dit alleen voor zichzelf houden en blijft zijn eigen versie van de markdown-editor onderhouden.
  • OF hij wil zijn idee delen met de originele makers en maakt een -=PULL REQUEST=- aan, zodat zij kunnen beslissen of ze de functie willen integreren.

Hoe zit forken in elkaar?

Bij forken ga je uit van een bestaande repository. Met behulp van git maak je een kopie naar je eigen account. Dit resulteert in een kopie van de oorspronkelijke repository.

Hoe gebruik je forken?

Als developer heb je de keuze om direct bij te dragen aan een repository of een fork te maken. Soms kan forken een goed idee zijn. Mogelijke redenen hiervoor zijn:

  • Misschien is het idee te experimenteel voor de originele repository.
  • De programmeur wil eigen controle over het project houden.
  • Hij heeft een andere visie op hoe de editor zou moeten werken.

Door te forken kan de programmeur zijn idee uitwerken zonder afhankelijk te zijn van de originele repository.

Forken wordt veel gebruikt in onderstaande situaties:

  • Experimenteren: Je kunt experimenteren zonder de originele repository te beschadigen.
  • Bijdragen: Je kunt bijdragen aan open-source zonder directe rechten op de originele code te hebben.
  • Eigen versie: Je kunt je eigen versie onderhouden met aanpassingen die specifiek voor jou nuttig zijn.

Volgende stap: Stappen forken