Hvis du udvikler nogen form for software eller webapplikation, er det næsten uundværligt at bruge Git i din arbejdsgang.

Det distribuerede versionsstyringssystem er næsten den eneste måde at koordinere din kodningsindsats blandt dit team på. Til det formål har Git et simpelt sæt kommandoer, som du hurtigt kan lære at bruge, men det er måske ikke altid intuitivt.

Det gælder især i situationer som f.eks. at udføre en git rename på en branch.

Teamwork kræver kommunikation, og dine branchnavne – eftersom de er offentlige – bør give masser af beskrivelse og klarhed. Dette kan støde sammen med det almindelige behov for at arbejde hurtigt. Som sådan kan det være nødvendigt at justere den hurtige navngivningskonvention, som du giver en gren for at begynde på koden, så den passer bedre til dit projekt.

I dette indlæg viser vi dig, hvordan du udfører en git rename på en branch. Lad os dog først tale om, hvad en branch er i Git og nogle af de situationer, hvor du ønsker at omdøbe en.

Hvad er en Git-branch (og hvorfor omdøbe en)?

Gits versionsstyring fungerer med branches. Du har et hovedrepositorium, som indeholder alle de forskellige grene for projektet, herunder den primære (mere om dette senere).

En del af fordelen ved at bruge Git er, at du kan duplikere den primære gren, arbejde på kode og derefter flette disse ændringer senere, når du har færdiggjort det hele.

Selv Kinsta har mulighed for at bruge Git til at få adgang til dit websted ved hjælp af Secure Shell (SSH). Desuden kan du oprette forbindelse til din GitHub-repo og implementere din applikation med få klik via MyKinsta-dashboardet.

En GitHub-skærm, der viser prompten "Kinsta by Kinsta vil gerne have tilladelse til at: Bekræfte din GitHub-identitet; vide, hvilke ressourcer du kan få adgang til; handle på dine vegne" med en grøn "Godkend Kinsta"-knap i bunden.
Godkendelse af Kinsta på GitHub.

At navngive grenen er dog et trin, som mange udviklere skynder sig igennem. Der er et væld af grunde til, at du måske ønsker at ændre et branch-navn i Git:

  • Klarhed: Du vil gerne sikre dig, at grenen giver fuldstændig klarhed over, hvilke kodeændringer den omfatter, og hvad de gør. Dette vil være vigtigt under sammenlægninger eller endda sletning af grene. Der er ingen vej tilbage efter at have slettet den forkerte branch eller glemt dens navn.
  • Konsistens: Din branch følger måske ikke de navngivningskonventioner, som dit team har opstillet. Det betyder, at du bliver nødt til at revidere branch-navne på et senere tidspunkt.
  • Moderne standarder: Hvis projektet er et legacy-projekt, eller hvis det er et langvarigt anliggende i dit team, passer filialer måske ikke til de nuværende kulturelle følsomhedskonventioner. Som et eksempel er der en populær bevægelse for at ændre den primære branch fra “master” til “main” eller “trunk” for at undgå referencer til slaveinstitutionen.

På grund af disse grunde (og andre) bliver du ofte nødt til at udføre en git rename på en branch.

Vi vil nu gennemgå, hvordan du gør det.

Sådan omdøber du en Git Branch

Når du skal køre en git rename på en branch, skal du tage hensyn til både lokale og eksterne (f.eks. GitHub) repositories. Den gode nyhed er, at den proces, som vi nu vil skitsere, vil dække alle de permutationer, du skal bruge for at få succes.

Lad os først gennemgå, hvordan du finder og ændrer navnet på en gren. Dette vil omfatte et kig på de kommando flag, der vil hjælpe dig. Derefter vil vi se på, hvordan du sikrer dig, at dit fjernrepo passer til det lokale repo.

1. Brug kommandoerne git checkout og git branch

Din første opgave er at finde den branch, du vil omdøbe. Du kan bruge følgende kommando:

git checkout current-name

Hvor vi bruger current-name, skal du tilføje navnet på din branch. Hvis du ikke kender navnet, eller hvis du vil se den komplette liste over branch (måske for at tjekke konventioner på tværs af projektet), kan du bruge git branch --list eller git branch -a.

Et delvist terminalvindue på en macOS-gradientbaggrund, der viser en liste over Git-kommandoer til en repo. Brugeren er gået ind i den lokale webstedsmappe og har angivet filialerne i repoen.
Navigering til og oplistning af grenene i et Git repo.

Når du er i den rigtige gren, kan du omdøbe den ved hjælp af følgende:

git branch -m new-name

Igen skal du sikre dig, at du bruger et specifikt branch-navn her, i stedet for vores stedholder. -m -flaget betyder “move” (flytning) og er det element i kommandoen, der får omdømmet til at ske.

Et delvist terminalvindue på en macOS-gradientbaggrund. Brugeren navigerer til den lokale webstedsmappe, viser grenene i repoen, går ind i en gren og ændrer derefter dens navn ved hjælp af en kommando.
Omdøbning af en gren i et Git repo.

Hvis det nye branch-navn, du vælger, allerede findes, kan du fremtvinge den ændring, du angiver, ved at bruge -M i stedet. Det er også den taktik, du bruger på Windows-maskiner, hvis dit branch-navn indeholder en blanding af store og små bogstaver.

Når du har bekræftet ændringen, skal du bruge git status til at se, om det nye navn gælder for din filial:

En delvis terminalskærm på en macOS-baggrund. Brugeren navigerer til en lokal webstedsmappe, går ind i en specifik branch, ændrer dens navn og kontrollerer derefter, at ændringen er anvendt ved hjælp af Git-kommandoer.
Kontrol af, at en Git-omdøbning er sket ved hjælp af git status.

Du behøver dog slet ikke at bruge git checkout, hvis du ikke ønsker det. Lad os hurtigt se nærmere på dette.

1(a). Omdøbning af en Git-gren uden at bruge git checkout

Denne metode virker kun, hvis du befinder dig i hovedbranch af dit repo. Hvis ikke, skal du altid bruge en git checkout; for at komme til din hovedbranch.

Uanset kan du se din nuværende placering i repo’en ved hjælp af git status. Kommandoen til at ændre branch-navnet svarer til den sidste metode, men denne gang kombinerer du både det nuværende og det nye grennavn:

git branch -m current-name new-name

Når du har kørt kommandoen, kan du kontrollere listen over grene som bekræftelse.

2. Skubbe den omdøbte gren til den eksterne repo

Mens denne metode fungerer for et lokalt repo, er der mere du skal gøre, når det drejer sig om fjernrepo’er. Du vil oftest skulle håndtere fjernrepos i dit projekt, og dette trin er et du ikke bør glemme.

Hvis du springer denne del af processen over, vil den nye gren stadig referere til sit gamle “upstream”-branch-navn. Tricket er at fjerne den gamle gren fra det eksterne repo og derefter skubbe den nye branch opstrøms.

Det første skridt er at omdøbe den lokale branch, men derfra kan du køre et par kommandoer efter tur.

Først skal du slette den gamle branch:

git push origin --delete old-branch

…og derefter push den nye:

git push origin -u new-branch

Som et alternativ kan du overskrive navnet på opstrømsbranchen ved hjælp af følgende: Du kan skrive navnet på opstrømsbranchen over med følgende:

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

Igen, kør git status for at se, om den nye gren peger på sin egen reference i stedet for den gamle. Hvis referencen peger på den gamle gren, kan du bruge git branch --unset-upstream til at rette det.

Opsummering

Git er en intuitiv og kraftfuld metode til at anvende distribueret versionskontrol på dit projekts kode.

En af dens mere fleksible fordele er muligheden for at bruge den både til lokale repositorier og eksterne repositorier. Nogle enkle opgaver (f.eks. omdøbning af branches) kræver dog mere omtanke end andre.

I denne artikel har vi diskuteret, hvordan man git rename en branch til både lokale og eksterne repos. Selv om selve kommandoen er ligetil, skal du anvende et par forskellige kommandoer for at sikre, at de lokale og eksterne repos passer sammen. Ellers kan enhver sammenlægning, du udfører, have fejl eller ukorrekte henvisninger til gamle eller ikke-eksisterende repos.

Hvis du har brug for en sikker og brugervenlig hostingmulighed til din Git-baserede applikation eller database, skal du ikke lede længere: Kinstas applikations- og databasehostingløsninger er udviklet med tanke på alle typer og størrelser af projekter, herunder full-stack-apps, og de kan implementeres via GitHub på få minutter.

Dit projekt vil nå nye hastighedsniveauer med C2-maskiner på Googles Premium Tier-netværk, og vores Cloudflare-integration vil beskytte dig mod næsten alle tænkelige sikkerhedsproblemer. Desuden kan du have så mange samtidige builds og brugere, som du ønsker.

Tjek Kinstas Applikation Hosting-planer for at finde en, der passer til dig og dit projekt, eller prøv det gratis. Hvis du har spørgsmål, vil Kinstas af erfarne udviklere være der for at hjælpe dig 24/7.