Ben je nieuw in een team en heb je de instructie gekregen om een externe branch uit de Git-code-opslagplaats te controleren? Of je nu deel uitmaakt van een uitgestrekte onderneming of een compact team, het beheersen van externe Git-branches is essentieel voor naadloze samenwerking aan code. In deze handleiding duiken we in het proces van het ophalen van code uit een externe Git-opslagplaats, met de nadruk op het ‘git checkout remote branch’ commando.
Not a reader? Explore this related video tutorial!
Not seeing the video? Ensure your ad blocker is disabled.
Vereisten
- Deze tutorial maakt gebruik van versie 2.30 van Git SCM (source code management) op Windows 10, hoewel het compatibel is met elk door Git ondersteund besturingssysteem.
Andere mogelijke installatiemethoden voor Windows zijn onder andere Chocolatey en Git4Win.
- A remote Git repository from platforms like GitLab, GitHub, or Azure DevOps is required. This article provides sample repositories for a hands-on experience, or you can utilize your own.
Begrip van een externe branch
Git-opslagplaatsen registreren en volgen een reeks gerelateerde commits binnen een branch. Standaard bevindt een commit zich in de momenteel actieve branch, meestal aangeduid als main
of master
.
A remote branch is a branch located in a remote Git repository. These remote repositories, termed as “remotes,” are the destinations your local Git repository will scout for external commit updates once set up.
Ontdek beschikbare branches met behulp van het Git branch
-commando. De branch gemarkeerd met een asterisk (*
) is de actieve branch. De hieronder vermelde branches zijn uitsluitend lokaal, omdat er nog geen externe branches zijn opgehaald.

git branch
command.Git Checkout Remote Branch beheersen
Stel dat je een lokale Git-repository hebt en de behoefte ontstaat om samen te werken met andere ontwikkelaars. Hier komt het Git checkout
-commando van pas, waarmee je de nieuwste commits van een externe branch op een externe Git-repository kunt ophalen.
Zodra een externe branch is geconfigureerd, zal Git de externe branch spiegelen in plaats van een lokaal-only branch. Hieronder staat een voorbeeld van het commando git checkout remote <branch>
.
Kloon de externe Git-repository
Nu je over een bestaande repository beschikt, is het tijd om in te duiken. Volg de onderstaande stappen om de externe repository naar een lokale map op je machine te klonen.
1. Het is vaak eenvoudiger om een externe repository te klonen via de HTTPS-URL dan via SSH om certificaat- en firewallproblemen te omzeilen.
- Ga naar de repository op GitHub.
- Klik op de Code-knop en selecteer HTTPS.
- Klik op het pictogram Kopieren naast de link om de URL naar je klembord te kopiëren.

2. Nadat je de HTTPS-URL naar je klembord hebt gekopieerd, open je een command-line interface met je voorkeurs-CLI, zoals Windows Command Prompt of de Windows Terminal.
3. Navigeer naar de map waar je de gekloonde repository wilt hebben. Voor deze tutorial wordt de map git in de home-directory gebruikt, zoals te zien is in de screenshots. Voer het volgende commando uit om de repository te klonen, waarmee een submap wordt aangemaakt voor de externe repository.

4. Ga naar de gekloonde repository met het commando cd git-checkout-remote-branch
.
Voer het volgende status-commando uit om te controleren of de repository succesvol is gekloond. Het Git status
-commando laat de verschillen zien tussen de lokale branch en de externe branch, en helpt bij het bepalen of je branch verbonden en up-to-date is! De standaard Git remote wordt “origin” genoemd en is gekoppeld aan de “main” externe branch. git status

Voor de meeste moderne Git-software is
main
de standaard primaire tak. Je kunt een oudere toepassing tegenkomen diemaster
gebruikt als de standaard taknaam, maar beide namen zijn functioneel hetzelfde. Deze tutorial gebruikt takken met de namenmain
,RemoteBranch
,SomeBranch
enAnotherBranch
.
Wat is een Git Remote en Hoe Remote-takken bijhouden
Het klonen van een repository maakt automatisch een verwijzing naar een externe bron, ook wel een remote genoemd. Deze verwijzing wordt gebruikt om nieuwe commits te controleren of nieuwe wijzigingen naar het externe repository te pushen.
A Git repository itself may have multiple remotes, but a branch can only reference a single remote.
Het volgen van een externe tak legt een relatie met een lokale tak. Deze relatie stelt je in staat om moeiteloos commits van de externe tak naar de lokale tak te pushen of te pullen. Bovendien bepaalt een gevolgde tak hoe ver vooruit of achterop de lokale tak is ten opzichte van de externe tak wat betreft commits.
Het vermelden van de remotes van een Git-repository
Ten eerste, zorg ervoor dat de repository waarmee je werkt Git remotes heeft. Bekijk Git remotes in je repository met het git remote
-commando zoals hieronder getoond. In dit geval worden twee remotes weergegeven, origin
en remote2
.

Twee extra gevolgde externe repositories hebben de namen
origin
enremote2
, waar jouw remotes mogelijk anders zijn.
Om meer details te verkrijgen over de geconfigureerde externe locaties, voeg de v
-schakelaar toe om de volledige Git externe URI weer te geven.

Je vraagt je misschien af waarom er aparte URI’s zijn voor
fetch
enpush
. Sommige Git-workflows staan toe om updates voor een repository te controleren op een andere URI dan waar je wijzigingen naartoe stuurt, dit wordt het triangulaire workflow genoemd.
Bekijken van beschikbare externe branches
Geef alle beschikbare branches weer, zowel lokaal als extern, in je repository met het branch
-commando. Voeg om de externe branches ook weer te geven, de all
-schakelaar toe, zoals hieronder geïllustreerd.
In de onderstaande afbeelding wordt de externe repository origin gebruikt in deze tutorial zoals verwacht. Desalniettemin laat deze afbeelding alle branches van de externe genaamd Remote2 weg.

Als een branch op je externe locatie niet wordt weergegeven in de lijst met branches, moet je je lijst met beschikbare externe branches bijwerken, zoals besproken in de volgende sectie.
Bijwerken van de beschikbare externe branches
Soms kan een externe repository branches toevoegen of wijzigen. Om ervoor te zorgen dat je werkt met de meest up-to-date branches, is het noodzakelijk om het git fetch
-commando uit te voeren.
De fetch
-opdracht maakt verbinding met de externe repository en haalt een lijst op van alle beschikbare branches. Bekijk na het uitvoeren van de git fetch
-opdracht uw momenteel bijgehouden branches om te zien dat de externe branch nu zichtbaar is, zoals hieronder gedemonstreerd.
Hieronder is de branch remotes/origin/RemoteBranch
nu zichtbaar in de lijst van beschikbare externe branches na het uitvoeren van de git fetch
-opdracht.

git fetch
to update the list of available remote branches.De fetch
-opdracht controleert alleen op updates van de externe repository die momenteel wordt bijgehouden in de huidige branch. Om Git te laten controleren op updates van alle remotes in de repo, ongeacht de bijhoudstatus, voeg de parameter all
toe.
Om de beschikbare branches van een specifieke externe repository op te halen, voeg de naam van de externe repository toe aan de git fetch
-opdracht, zoals Remote2
in het onderstaande voorbeeld, dat de branch main
ophaalt.

main
from remote2
with the git fetch
command.Elke keer dat u op afstand naar updates zoekt met
git fetch
,git pull
, ofgit push
, vergelijkt Git commits met de externe tak. Lokale takken kunnen elke Git externe tak volgen. Bovendien kunnen meerdere lokale takken worden ingesteld om dezelfde externe tak te volgen.
Weergave van het volgen van elke externe tak
Om de gevolgde externe tak naast de overeenkomstige lokale tak te zien, gebruikt u de vv
parameter met het commando git branch
. De resultaten van het commando tonen een lijst van externe en lokale takken in het formaat [<extern>/<tak>]
zoals hieronder geïllustreerd.

Wijzigen van het volgen van een tak naar een externe tak
Er kan een noodzaak zijn om uw lokale tak aan te passen om een andere externe tak te volgen. Om uw huidige tak in te stellen op een specifieke externe tak, gebruikt u de u
parameter, zoals hieronder geïllustreerd.

Uitchecken van Git externe takken
Met nieuwe takken die zijn gemaakt in het externe Git repository, moet u mogelijk een git checkout externe tak operatie uitvoeren. Het uitchecken van een externe repositorytak wordt uitgevoerd via het checkout
commando.
Als de volgende voorwaarden zijn voldaan, zal Git autonoom bepalen wat de juiste externe bron is, een lokale kopie van de externe tak downloaden en de lokale kopie instellen om te volgen tegen de externe tak. Controleer of de volgende voorwaarden niet zijn voldaan via de resultaten van het `git branch –all` commando.
- A local branch with the same name does not already exist.
- Er bestaan geen meerdere externe bronnen die dezelfde externe taknaam gebruiken.
Om de operatie voor het uitchecken van een externe tak uit te voeren, gebruikt u het `git checkout` commando en typt u de naam van de externe tak zoals hieronder weergegeven.

git checkout
.Als uw lokale repository al een lokale tak met dezelfde naam bevat, voeg dan de `b` parameter toe om een alternatieve lokale taknaam aan te geven vóór de externe tak om uit te checken.

Als uw lokale repository meerdere externe bronnen heeft met dezelfde taknaam, geef dan aan welke externe bron en tak moet worden gevolgd voor lokale commits.

Toekomstige versies van Git geven mogelijk de voorkeur aan het gebruik van het `git switch` commando voor het wijzigen en aanmaken van takken. Het Git `switch` commando is alleen voor takken, terwijl het Git checkout commando veel mogelijkheden heeft. Irshad S. heeft een goede inleiding geschreven over de redenering als je meer wilt lezen.
Een Lokale Tak Pushen naar een Externe
Bij het maken van een lokale branch zonder een overeenkomstige externe branch voor tracking, kun je de branch naar de externe repository duwen met behulp van het git push
-commando. De meest directe methode om een nieuwe branch op je voorkeursremote op te zetten, is door de u
-parameter te gebruiken.
De u
-parameter, zoals eerder gebruikt, vereist de argumenten van de repositorynaam en de branchebron. Door alleen HEAD
als de bronbranche te specificeren, begrijpt Git dat het de huidige lokale branche naam moet gebruiken als de naam op de externe, in dit geval NewBranch
.

HEAD
is een snelkoppeling die eenvoudigweg betekent de huidige branch. Je kunt andere branches naar de externe repository pushen en tracking instellen door hun naam te gebruiken in plaats vanHEAD
.
Soms komt de naam van de huidige lokale branch niet overeen met de naam van de externe branch. Om een andere naam te gebruiken, specificeer de gewenste branchnaam na de bron, verbonden door een dubbele punt, zoals hieronder gedemonstreerd.

Volgende stappen en aanvullende Git-bronnen
Na het essentiële van Git, het beheren van remotes, en het uitvoeren van `git checkout` voor externe branches te hebben doorgenomen, beschik je nu over een schat aan kennis die zal helpen bij het voorkomen van toekomstige frustraties. De stappen om een externe branch uit te checken in Git en gedeelde best practices zullen dienen als onschatbare bronnen voor de toekomst.
Als je dieper wilt ingaan op andere aspecten van het beheren van een Git-repository, worden de volgende bronnen ten zeerste aanbevolen:
- A primer on detached heads: Discover scenarios where a detached HEAD is beneficial or inadvertent, and how to handle it.
- Git switch: Een commando dat specifiek is voor het omgaan met branches, in tegenstelling tot het veelzijdige `Git
checkout
`.
Source:
https://adamtheautomator.com/git-checkout-remote-branch/