Wat is GitHub en waarvoor wordt het gebruikt?
GitHub is een website en service waar geeks altijd dol op zijn, maar toch begrijpen veel mensen niet echt wat ze doen. Wil je weten waar al het rumoer van GitHub over gaat? Lees verder om erachter te komen.
De "Git" in GitHub
Om GitHub te begrijpen, moet je eerst Git begrijpen. Git is een open-source versiebeheersysteem dat is gestart door Linus Trovalds - dezelfde persoon die Linux heeft gemaakt. Git lijkt op andere versiecontrolesystemen: Subversion, CVS en Mercurial om er maar een paar te noemen.
Git is dus een versiecontrolesysteem, maar wat betekent dat? Wanneer ontwikkelaars iets maken (bijvoorbeeld een app), maken ze constant wijzigingen in de code door nieuwe versies uit te brengen tot en na de eerste officiële (niet-bèta) versie.
Versiecontrolesystemen houden deze revisies recht en slaan de wijzigingen op in een centrale repository. Hierdoor kunnen ontwikkelaars eenvoudig samenwerken, omdat ze een nieuwe versie van de software kunnen downloaden, wijzigingen kunnen aanbrengen en de nieuwste revisie kunnen uploaden. Elke ontwikkelaar kan deze nieuwe wijzigingen bekijken, downloaden en bijdragen.
Evenzo kunnen mensen die niets te maken hebben met de ontwikkeling van een project de bestanden nog steeds downloaden en gebruiken. De meeste Linux-gebruikers moeten bekend zijn met dit proces, omdat het gebruik van Git, Subversion of een andere vergelijkbare methode vrij normaal is voor het downloaden van benodigde bestanden, vooral als voorbereiding op het compileren van een programma uit broncode (een vrij algemene praktijk voor Linux-geeks).
Git is het voorkeursversiecontrolesysteem van de meeste ontwikkelaars, omdat het meerdere voordelen biedt ten opzichte van de andere beschikbare systemen. Het slaat bestandsveranderingen efficiënter op en zorgt voor een betere bestandsintegriteit. Als je geïnteresseerd bent in het kennen van de details, heeft de Git Basics-pagina een grondige uitleg over hoe Git werkt.
De "Hub" in GitHub
We hebben vastgesteld dat Git een versiecontrolesysteem is, vergelijkbaar maar beter dan de vele beschikbare alternatieven. Dus, wat maakt GitHub zo speciaal? Git is een command-line tool, maar het centrum waarrond alle dingen waarbij Git draait zijn, is de hub-GitHub.com - waar ontwikkelaars hun projecten opslaan en netwerken met gelijkgestemde mensen.
Laten we een paar van de belangrijkste redenen bespreken waarom geeks GitHub graag gebruiken en onderweg wat terminologie leren.
bewaarplaats
Een repository (meestal afgekort tot "repo") is een locatie waar alle bestanden voor een bepaald project worden opgeslagen. Elk project heeft zijn eigen repo en je hebt er toegang toe met een unieke URL.
Een repo invullen
"Forking" is wanneer u een nieuw project maakt op basis van een ander project dat al bestaat. Dit is een geweldige functie die de verdere ontwikkeling van programma's en andere projecten enorm stimuleert. Als je op GitHub een project vindt waaraan je een bijdrage wilt leveren, kun je de repo doorspitten, de gewenste wijzigingen aanbrengen en het herziene project als een nieuwe repo vrijgeven. Als de originele repository die u hebt gevorkd om uw nieuwe project te maken, wordt bijgewerkt, kunt u die updates eenvoudig aan uw huidige vork toevoegen.
Pull-verzoeken
Je hebt een repository gevorkt, een geweldige revisie gemaakt voor het project en wilt dat het wordt herkend door de oorspronkelijke ontwikkelaars - misschien zelfs opgenomen in het officiële project / de repository. U kunt dit doen door een pull-aanvraag te maken. De auteurs van de oorspronkelijke repository kunnen uw werk zien en vervolgens kiezen of ze het in het officiële project willen accepteren. Wanneer u een pull-aanvraag doet, biedt GitHub een perfect medium voor u en de beheerder van het hoofdproject om te communiceren.
Sociaal netwerken
Het sociale netwerkaspect van GitHub is waarschijnlijk de meest krachtige functie, waardoor projecten meer kunnen groeien dan alleen maar een van de andere aangeboden functies. Elke gebruiker op GitHub heeft zijn eigen profiel dat werkt als een samenvatting van de soort, en toont je verleden werk en bijdragen aan andere projecten via pull-verzoeken.
Projectrevisies kunnen openbaar worden besproken, dus een massa experts kan kennis inbrengen en samenwerken om een project vooruit te helpen. Vóór de komst van GitHub moesten ontwikkelaars die geïnteresseerd waren in het bijdragen aan een project meestal een manier vinden om contact op te nemen met de auteurs - waarschijnlijk via e-mail - en hen vervolgens overtuigen dat ze te vertrouwen zijn en dat hun bijdrage legitiem is.
changelogs
Wanneer meerdere mensen samenwerken aan een project, is het moeilijk om revisies bij te houden - wie heeft wat veranderd, wanneer en waar deze bestanden zijn opgeslagen. GitHub zorgt voor dit probleem door alle wijzigingen die naar de repository zijn gepusht bij te houden.
GitHub is niet alleen voor ontwikkelaars
Al dit gepraat over hoe GitHub ideaal is voor programmeurs, laat je geloven dat zij de enigen zijn die het nuttig zullen vinden. Hoewel het een stuk minder gebruikelijk is, kunt u GitHub eigenlijk voor elk type bestand gebruiken. Als u een team hebt dat voortdurend wijzigingen aanbrengt in een woorddocument, kunt u GitHub bijvoorbeeld gebruiken als uw versiecontrolesysteem. Deze praktijk is niet gebruikelijk, omdat er in de meeste gevallen betere alternatieven zijn, maar het is iets om in gedachten te houden.
Nu je weet waar GitHub voor staat, ben je klaar om aan de slag te gaan? Ga naar GitHub.com en raadpleeg hun helppagina's nadat je je hebt aangemeld.