Sådan sletter du filial i Git

Sådan sletter du filial i Git

Udvikling på GitHub kan nogle gange indebære at skabe et par for mange filialer, især når du går efter forsøg og fejl. Heldigvis gør platformen det nemt at rydde op i dit virtuelle arbejdsområde og trimme nogle unødvendige grene, og rydde op i din forpligtelseshistorik for at holde dit fokus på det, der betyder noget.

Sådan sletter du filial i Git

Denne artikel er her for at hjælpe dig med at lave lidt husholdning på GitHub og give dig et par flere tips og tricks om Git-grene og deres sletning.

Sletning af en filial i Git

Det er ikke kompliceret at slette en filial i Git, men trinene kan være lidt forskellige afhængigt af placeringen af ​​din filial. Sådan kan du slette en lokal Git-afdeling:

  1. Gå til den gren, du vil slette.
  2. Åbn terminalen og kør git branch for at se alle dine filialer.
    Sådan sletter du filial i Git
  3. Hvis du er på den filial, du vil fjerne, skal du skifte ved hjælp af git checkout [other_branch_name] .
    Sådan sletter du filial i Git
  4. Brug git branch -d [branch_name] for at slette grenen. Husk, at flaget -d sørger for, at du ikke sletter usammenflettede grene.
    Sådan sletter du filial i Git

Sletning af en ekstern filial er lidt anderledes:

  1. Brug git push origin –delete [branch_name] .
    Sådan sletter du filial i Git
  2. Dobbelttjek, at du har slettet den rigtige ved at liste alle brancher med git branch -a .
    Sådan sletter du filial i Git

Hvorfor slette en filial?

Sletning af filialer i Git er noget udviklere gør ofte af forskellige årsager:

Projekt oprydning

Efter at have flettet en funktionsgren ind i hoved- eller udviklingsgrenen, bliver denne funktionsgren ofte overflødig. Tænk på det som en oprydning på arbejdspladsen efter at have afsluttet et projekt, bare i digital form.

Ligesom du ikke længere har brug for udkast og skitser, fordi det endelige produkt er klar, i Git, reducerer denne oprydning rod og lader dig fokusere på aktive grene. Hvis du for eksempel lige har lanceret en ny funktion i din app og slået "ny-funktion"-grenen sammen, vil sletning af den efter sammenfletningen holde din filialliste relevant og overskuelig.

Fejl og eksperimenter

Ligesom enhver anden type projekt er det ikke alle idéer, der lykkes i udviklingen, og ikke enhver gren fører til en vellykket funktion. Nogle gange oprettes grene også ved en fejl (som at skrive "git checkout -b" med det forkerte navn) eller bruges til kortvarige eksperimenter.

Disse grene kan hobe sig op, forvirre dig og rode i dit projekt. Det er alt sammen en naturlig del af at lære og eksperimentere med kodning. Du kan oprette en filial for at prøve et nyt bibliotek; hvis det ikke lever op til dine forventninger, er der ingen grund til at beholde det.

Holder holdet på sporet

Når du arbejder med et team, især når flere personer arbejder på forskellige funktioner, har du endnu mere incitament til at holde lageret rent og organiseret. Gamle eller irrelevante grene kan forvirre folk og forårsage fejl.

Når disse grene er væk, vil alle på holdet mere sandsynligt være på samme side. Det undgår også risikoen for ved et uheld at arbejde på forældet kode. Overvej et team, der arbejder på en webapplikation, der stadig har filialer til færdige funktioner som "login-opdatering" eller "ny-ui". Det kan være misvisende. Beskæring af disse grene gør det nemmere og uden bekymringer at finde det, du vil arbejde på.

Bedste praksis og tips

Overvej disse tips, når du sletter grene:

Sikkerhedskopier før sletning

Før du trykker på slet-knappen på en gren, er det smart at tage backup af den først. Hvorfor vil du måske det, hvis filialen ikke længere er nødvendig? For nogle gange indser du måske lidt for sent, at der var et stykke kode eller en specifik implementering i den gren, som du stadig har brug for.

Du kan oprette en sikkerhedskopi ved at lave en kopi af grenen med et andet navn, såsom git branch [backup-branch-name] [branch-to-delete] . På denne måde, hvis du nogensinde har brug for at besøge den filial igen, har du alt sikkert gemt væk.

Brug tvungen sletning sparsomt

"-D"-flaget er en kraftfuld funktion i Git-værktøjssættet, men det bør bruges med forsigtighed. Denne kommando (git branch -D [branch-name]) med et stort -D (force delete) vil med magt slette en gren. I modsætning til kommandoen med små bogstaver –d, som giver en advarsel, ignorerer denne alle usammenflettede ændringer og renser data permanent.

Denne kommando er nyttig, når du er helt sikker på, at grenens ændringer ikke længere er værd at bevare, eller hvis en fletning er gået galt, og du vil starte forfra. Du skal dog altid dobbelttjekke, før du bruger det.

Ryd op i fjernreferencer

Efter fjernsletning af en filial, er det værd at rydde op i dine lokale referencer til den filial, så du ikke ved et uheld refererer til den. Kommandoen "git fetch -prune" gør netop det. Det fortæller din lokale Git at fjerne referencer til eksterne filialer, der ikke længere eksisterer, og holder det lokale lager opdateret og undgår enhver forvirring med irrelevante filialer.

Almindelige faldgruber og hvordan man undgår dem

Sletning af filialer kan komme med nogle faldgruber, især hvis du skyndte dig med din beslutning og ikke havde til hensigt at slette noget. Lad os se på nogle af disse faldgruber, og hvordan man undgår at falde i dem.

Tabt arbejde

En af de største risici ved sletning af filialer i Git er at miste værdifuldt arbejde. Dette sker normalt, når du sletter en gren, før den flettes fuldstændigt eller gemmer dens ændringer et andet sted. Det kan skyldes en simpel fejl, men det kan også skyldes et teknisk problem. For eksempel kan der have været et problem med internetforbindelsen eller en computerfejl.

Dobbelttjek, at alle værdifulde ændringer eller commits fra grenen kom ind i din hoved- eller udviklingsgren for at undgå dette. Du kan bruge git log [branch-name] til at gennemgå commit-historikken og se, hvad du skal beholde. Hvis du arbejder på noget eksperimentelt eller uklar til hovedgrenen, kan det være en god løsning at gemme det anderledes, såsom tagging eller stashing. Som en skitse af en idé har du måske ikke brug for den nu, men den kan være nyttig senere.

Forvirring i teams

Når du arbejder som en del af et team, kan sletning af filialer nogle gange forvirre de andre teammedlemmer, især hvis teammedlemmerne ikke er opmærksomme på ændringerne. Hvis du arbejder på et gruppeprojekt, og nogen fjerner et værktøj, du havde tænkt dig at bruge – kan det kaste betydeligt ud af din arbejdsgang.

Derfor, før du sletter noget, skal du tale med dine teammedlemmer og se, om det er i orden at gøre det. Når du beslutter dig for at rense en filial, skal du informere dit team, især hvis andre kan bruge eller overvåge den samme filial. Værktøjer som problemsporing eller teamchats kan være nyttige til dette.

Det er også godt at have en navnekonvention for filialer (f.eks. "feature/," "bugfix/," osv.), der beskriver hver grens formål, og om det er sikkert at slette. Når du mener, at en gren skal gå, så lad andre vide, at den ikke længere er nyttig og kan lægges væk.

Git Decluttering

Det er nemt at slette en Git-gren, hvis du tænker dig om, før du klikker. Ellers kan det være utroligt frustrerende, hvis du ender med at miste vigtigt arbejde på grund af en utilsigtet sletning. Det gælder især, hvis du arbejder i et team af udviklere. Men det er her, effektiv kommunikation spiller ind.

Er en filialsletning nogensinde gået galt for dig? Har du andre tips til håndtering af filialer i Git? Del dine tanker og tips i kommentarfeltet nedenfor.


ISperm lader dig tjekke din sæd ved hjælp af en IPad

ISperm lader dig tjekke din sæd ved hjælp af en IPad

Du har haft en hård dag på arbejdet. Du sætter iPad'en op på sofabordet. Du ser noget Netflix, lukker gardinet, analyserer dit sædtal, tjekker Twitter

Parrots Disco Drone tager papirfly til næste niveau

Parrots Disco Drone tager papirfly til næste niveau

Tænk på en drone, og du vil tænke på en summende quadcopter, der svæver over en park. Det eller krig. Men fire motorer er så 2015, ser det ud til, som drone

Du kan hjælpe Crowdfund med en statue af verdens første rumkat

Du kan hjælpe Crowdfund med en statue af verdens første rumkat

Ugens kickstarter: En statue af Félicette, den første kat i rummet Laika, den første hund i rummet, har en statue i Moskva. Skinke, astrochimpen

Sådan kontrolleres, hvem der ejer en fil i Linux

Sådan kontrolleres, hvem der ejer en fil i Linux

Hvis du vil tjekke, hvem der ejer en fil, fungerer Linux meget anderledes end andre systemer. Der er ingen mulighed for bare at højreklikke på en fil og gå til Egenskaber

Sådan diagnosticeres og rettes en Xbox-controller, der ikke oplader

Sådan diagnosticeres og rettes en Xbox-controller, der ikke oplader

Spillere elsker Xbox-konsoller for deres bagudkompatibilitet, hvilket betyder, at spillere kan bruge ældre tilbehør på de nyere konsoller. Med udgivelsen af ​​Xbox

Sådan bruger du din egen router med Verizon Fios

Sådan bruger du din egen router med Verizon Fios

Hvis du bruger Verizon som internetudbyder og har din egen router, må tanken om at droppe den lejede Verizon-router have strejfet dig. Ved brug af

Kan ikke dele opslag til Instagram-historie – hvorfor ikke?

Kan ikke dele opslag til Instagram-historie – hvorfor ikke?

Instagram har en række funktioner, der giver os mulighed for at interagere med andre konti på platformen. De virker dog måske ikke altid, som de skulle

Fire Tablet: Seneste generationer

Fire Tablet: Seneste generationer

Den seneste generation af Amazon Fire Tablet kommer med nogle fantastiske funktioner til at holde hele familien underholdt. Med nye modeller udgivet

Sådan tilføjer du fodnoter til et Google-dokument

Sådan tilføjer du fodnoter til et Google-dokument

Opdateret 23. november 2022 af Steve Larner. Fodnoter i Google Docs er en fantastisk måde at tilføje kommentarer, citere referencer eller endda give et link til kilder i

Hvad er den nyeste Kindle ude nu?

Hvad er den nyeste Kindle ude nu?

Opdateret 23. november 2022 af Steve Larner for at afspejle aktuelle Kindle-udgivelser. Amazons Kindle er den definitive leder på det amerikanske marked for e-bogslæsere.