Als je software of een webapplicatie ontwikkelt, is het gebruik van Git een bijna essentieel onderdeel van je werkproces.

Dit gedistribueerde versiebeheersysteem is bijna de enige manier om je codering binnen je team te coördineren. Daarvoor heeft Git een eenvoudige set commando’s die je snel kunt oppikken, maar het is niet altijd even intuïtief.

Dit geldt vooral voor situaties als het uitvoeren van een git rename op een branch.

Teamwerk vereist communicatie, en je branchnamen – gezien het feit dat ze openbaar zijn – moeten idealiter veel beschrijving en duidelijkheid bieden wat kan botsen met de algemene behoefte om snel te werken. Daarom is het misschien slim om de snelle naam die je aan je branch hebt gegeven omdat je snel wilde beginnen, aan te passen zodat deze beter bij je project past.

In dit artikel laten we je zien hoe je een git rename uitvoert op een branch. Maar laten we eerst eens bespreken wat een branch is in Git en in welke situaties je er een zult willen hernoemen.

Wat is een Git branch (en waarom er een hernoemen)?

Git’s versiebeheer werkt met branches. Je hebt een hoofdrepository, die alle verschillende branches voor het project bevat, inclusief de primaire (waarover later meer).

Een deel van het voordeel van het gebruik van Git is dat je de primaire branch kunt dupliceren, aan code kunt werken, en die wijzigingen later kunt samenvoegen, als je alles hebt afgerond.

Zelfs Kinsta heeft de mogelijkheid om Git te gebruiken voor toegang tot je site via Secure Shell (SSH). Bovendien kun je verbinding maken met je GitHub repo en je applicatie in een paar klikken te deployen via het MyKinsta dashboard.

Een GitHub scherm met de prompt
Het autoriseren van Kinsta op GitHub.

Het benoemen van de branch is echter een stap waar veel developers zich doorheen haasten. Er is een veelheid aan redenen waarom je een branchnaam in Git zou willen veranderen:

  • Duidelijkheid: Je zult ervoor willen zorgen dat de branch volledige duidelijkheid biedt over welke codewijzigingen het bevat en wat ze doen. Dit zal belangrijk zijn tijdens het samenvoegen of zelfs het verwijderen van branches. Er is geen weg terug na het verwijderen van de verkeerde branch of het vergeten van zijn naam.
  • Consistentie: Je branch volgt wellicht niet de naamgevingsconventies die je team heeft opgezet. Dit betekent dat je branchnamen op een later tijdstip moet herzien.
  • Moderne standaarden: Als het project een oud project is, of het is een langetermijndingetje binnen je team, kan het zijn dat branches niet overeenkomen met de huidige culturele gevoeligheidsconventies. Er is bijvoorbeeld een beweging gaande  om de primaire branch te veranderen van “master” in “main” of “trunk” om verwijzingen naar het instituut slavernij te vermijden.

Om deze redenen (en andere) zul je vaak een git rename moeten uitvoeren op een branch.

Hierna zullen we je uitleggen hoe je dat doet.

Zo hernoem je een Git branch

Als het gaat om het uitvoeren van een git rename op een branch, zul je zowel lokale als remote (bijv. GitHub) repositories moeten overwegen. Het goede nieuws is dat het proces dat we nu gaan schetsen alle opties omvat die je nodig hebt om te slagen.

Laten we eerst behandelen hoe je de naam van een branch kunt vinden en veranderen. Hierbij wordt ook gekeken naar de commando flags die je zullen helpen. Daarna bekijken we hoe je ervoor kunt zorgen dat je remote repo overeenkomt met de lokale.

1. Gebruik de commando’s git checkout en git branch

Je eerste taak is het lokaliseren van de branch die je wilt hernoemen. Je kunt het volgende commando gebruiken:

git checkout current-name

Waar we current-name gebruiken, wil je je de naam van je branch toevoegen. Als je de naam niet meer weet, of de complete lijst van branches wilt zien (misschien om te controleren op de namen binnen het hele project), kun je git branch --list of git branch -a gebruiken.

Een gedeeltelijk Terminal venster op een macOS gradiënt achtergrond, met een lijst van Git commando's voor een repo. De gebruiker is in de lokale site map gegaan, en heeft de branches binnen de repo opgesomd.
Navigeren naar en opsommen van de branches binnen een Git repo.

Als je eenmaal in de juiste branch zit, kun je hem hernoemen met het volgende:

git branch -m new-name

Nogmaals, je zult ervoor willen zorgen dat je hier een specifieke branchnaam gebruikt, in plaats van onze placeholder. De flag -m betekent “move” en is het element van het commando dat de hernoeming veroorzaakt.

Een gedeeltelijk Terminal venster op een macOS gradiënt achtergrond. De gebruiker navigeert naar de lokale sitemap, maakt een lijst van de takken binnen de repo, gaat naar een branch en verandert de naam met een commando.
Het hernoemen van een branch binnen een Git repo.

Als de nieuwe branchnaam die je kiest al bestaat, kun je de verandering die je opgeeft forceren met -M. Dit is ook de tactiek die je op Windows machines zult gebruiken als je branchnaam een mengeling van hoofd- en kleine letters bevat.

Zodra je deze wijziging hebt bevestigd, gebruik je git status om te zien of de nieuwe naam van toepassing is op je branch:

Een gedeeltelijk Terminal scherm op een macOS achtergrond. De gebruiker navigeert naar een lokale site map, gaat naar een specifieke branch, verandert de naam, en controleert dan of de verandering is toegepast met Git commando's.
Controleren of een Git hernoeming heeft plaatsgevonden met git status.

Maar je hoeft git checkout niet te gebruiken als je dat niet wilt. Laten we dit snel in meer detail bekijken.

1(a). Hernoem een Git branch zonder gebruik te maken van git checkout

Deze methode werkt alleen als je in de hoofdbranch van je repo zit. Zo niet, dan zul je altijd een git checkout; moeten gebruiken om bij je hoofdbranch te komen.

Le kunt je huidige locatie in de repo zien met git status. Het commando om de branchnaam te veranderen is vergelijkbaar met de laatste methode, maar deze keer combineer je zowel de huidige als de nieuwe branchnaam:

git branch -m current-name new-name

Nadat je het commando hebt uitgevoerd, kun je de lijst met branches als bevestiging bekijken.

2. Push de hernoemde branch naar de externe repo

Hoewel deze methode werkt voor een lokale repo, moet je meer doen als het gaat om remote repo’s. Je zult vaker wel dan niet moeten omgaan met remote repo’s binnen je project, en deze stap mag je niet vergeten.

Als je dit deel van het proces overslaat, zal de nieuwe branch nog steeds verwijzen naar zijn oude “upstream” branchnaam. De truc is om de oude branch van de remote repo te verwijderen, en dan de nieuwe branch upstream te pushen.

De eerste stap is het hernoemen van de lokale branch, maar vanaf daar kun je een paar commando’s na elkaar uitvoeren.

Verwijder eerst de oude branch:

git push origin --delete old-branch

…en push dan de nieuwe:

git push origin -u new-branch

Als alternatief kun je de upstream branchnaam overschrijven met het volgende:

git push origin: old-branch new-branch
git push origin -u new-branch

Nogmaals, voer git status uit om te zien of de nieuwe branch naar zijn eigen referentie wijst, in plaats van naar de oudere. Als de referentie naar de oude branch wijst, kun je git branch --unset-upstream gebruiken om het te repareren.

Samenvatting

Git is een intuïtieve en krachtige methode om gedistribueerd versiebeheer toe te passen op de code van je project.

Een van de meer flexibele voordelen is de mogelijkheid om het zowel voor lokale repositories als voor remote repositories te gebruiken. Sommige eenvoudige taken (zoals het hernoemen van branches) vereisen echter meer denkwerk dan andere.

In dit artikel hebben we besproken hoe je git rename een branch voor zowel lokale als remote repo’s kunt hernoemen. Hoewel het commando zelf eenvoudig is, moet je een paar verschillende commando’s toepassen om ervoor te zorgen dat de lokale en remote repos overeenkomen. Anders kan elke samenvoeging die je uitvoert fouten bevatten of onjuiste verwijzingen naar oude of niet bestaande repo’s.

Als je een veilige, gebruiksvriendelijke hostingoptie nodig hebt voor je op Git gebaseerde applicatie of database, zoek dan niet verder: Kinsta’s Applicatie Hosting en Database Hosting oplossingen zijn gebouwd met alle soorten en maten projecten in gedachten, inclusief full-stack apps, en kunnen in slechts enkele minuten via GitHub worden ingezet.

Je project zal nieuwe snelheidsniveaus bereiken met C2 machines op het Premium Tier Network van Google, en onze Cloudflare integratie beschermt je tegen vrijwel alle denkbare beveiligingsproblemen. Bovendien kun je zoveel gelijktijdige builds en gebruikers hebben als je wilt.

Bekijk Kinsta’s Applicatie Hosting pakketten om er een te vinden die bij jou en je project past, of probeer het gratis uit. Als je vragen hebt, staan Kinsta’s ervaren developers 24/7 klaar om je te helpen.