Hoe ga je verder?
Begrijp de termen van gehoste Git
Een hostingdienst zet een andere repository op een computer die je via een netwerk bereikt en voegt er hulpmiddelen voor samenwerking aan toe. Gehoste URL’s, authenticatie, forks en pull requests regelen die uitwisseling, maar het onderliggende Git-model verandert niet.
Deze les maakt het onderscheid tussen die termen duidelijk, zodat documentatie van een aanbieder een repository, branch en reviewvoorstel niet voor je door elkaar haalt. Je hoeft geen aanbieder te kiezen, account te maken, authenticatie in te stellen of project op een netwerk te zetten.
Een pad wordt een gehoste URL
In de lokale oefeningen bewaarde origin het pad ../origin.git. Bij een gehoste repository is de opgeslagen locatie meestal een HTTPS- of SSH-URL in plaats van een pad op dezelfde schijf. De remotenaam origin blijft een gewone, gebruikelijke naam die in je lokale repository is opgeslagen.
HTTPS en SSH zijn manieren waarop Git de andere repository bereikt. Een dienst kan authenticatie eisen: bewijs welk account een verzoek doet en dat dat account het mag doen. De precieze regels voor inloggen, tokens, sleutels en rechten horen bij die dienst. Het zijn inrichtingskeuzes, geen ontbrekende onderdelen van de Git-cursus.
Ook je lokale main en origin/main houden hun eerdere betekenis. Je lokale main is de branch waarop je werkt. origin/main is de laatst waargenomen stand van de remotebranch die jouw repository bewaart. Een hostingwebsite kan die verwijzingen met knoppen en diagrammen tekenen, maar maakt er niet één live gedeelde wijzer van.
Een fork is een gehoste kopie
Een fork is een kopie die een hostingdienst onder een ander account of in een andere naamruimte maakt. Mensen maken vaak een fork als ze geen branches rechtstreeks naar de oorspronkelijke gehoste repository kunnen of horen te pushen.
Een fork is geen branch. Het is een andere gehoste repository met eigen verwijzingen en toegangsregels. Een fork is ook niet hetzelfde als een clone: een fork ontstaat bij de dienst, terwijl een clone een werkrepository op je computer maakt. Je kunt je fork clonen, lokaal commits en branches maken en later werk uitwisselen met één of meer gehoste repositories.
Een pull request is een reviewvoorstel
Een pull request is een voorstel bij een hostingdienst om een reeks commits te beoordelen en één branch in een andere op te nemen. Sommige diensten noemen hetzelfde algemene idee een merge request. De dienst kan het verschil tonen, opmerkingen verzamelen, automatische controles uitvoeren en vastleggen of het voorstel is geaccepteerd.
Een pull request is geen Git-commit en ook niet de opdracht git pull. Het woord “pull” beschrijft de voorgestelde samenwerking vanuit het perspectief van de dienst. Er een openen of accepteren hoort bij een gehoste werkwijze. Diensten en teams hanteren daarvoor verschillende regels.
De samenhang is nu compleet: Git bewaart momentopnamen en verwijzingen; remotes verbinden repositories; een gehoste URL geeft een remote een netwerklocatie; authenticatie regelt toegang; een fork is een andere gehoste repository; en een pull request voegt een reviewgesprek rond commits en branches toe. Geen van die dienstfuncties verandert wat een commit of branch is.