Sammenslåing i Git fungerer ikke alltid slik du håpet. Det kan forårsake en rekke problemer som fører til kodeproblemer. Heldigvis kan du ganske enkelt reversere sammenslåinger for å angre dem og de uvelkomne endringene de introduserte.

Les videre for å oppdage alt du trenger å vite om hvordan du kan tilbakestille en sammenslåing i Git.
Slik tilbakestiller du en sammenslåing lokalt ved å bruke Git Revert
Git er et hendig verktøy for programvareutvikling, som lar utviklere samarbeide om en enkelt kildekode samtidig på forskjellige grener. Å slå sammen de individuelle grenene fungerer ikke alltid som planlagt, og det er da tilbakestillingskommandoen kommer godt med.
Her er trinnene for å tilbakestille en sammenslåing lokalt ved å bruke git revert:
- Gå til grenen der sammenslåingen må reverseres.
- Skriv inn og utfør git log- kommandoen med minst –oneline- parameteren for synlighet for å se forpliktelseshistorikken din.
![Hvordan tilbakestille en sammenslåing i Git Hvordan tilbakestille en sammenslåing i Git]()
- Skriv inn git revert etterfulgt av -m 1 .
![Hvordan tilbakestille en sammenslåing i Git Hvordan tilbakestille en sammenslåing i Git]()
- Bruk git push- kommandoen for å angre merge commit lokalt.
![Hvordan tilbakestille en sammenslåing i Git Hvordan tilbakestille en sammenslåing i Git]()
Å tilbakestille en sammenslåing lokalt ved å bruke git revert vil opprette en ny forpliktelse og angre sammenslåingen og påfølgende endringer, men det fjerner ikke sammenslåingshistorikken. Hvis du allerede har skjøvet sammenslåingen til det eksterne depotet, må du bruke mer drastiske tiltak.
For å tilbakestille en sammenslåing som har blitt skjøvet, følg trinn 1 til 3, og erstatte trinn 4 med følgende:
4. Skriv inn git push –force for å angre merge commit på det eksterne depotet.
![Hvordan tilbakestille en sammenslåing i Git Hvordan tilbakestille en sammenslåing i Git]()
I motsetning til å reversere en sammenslåing lokalt, har å angre en sammenslåing som har blitt skjøvet til det eksterne depotet potensialet til å permanent slette forpliktelser og deres endringer. Derfor er det viktig at du oppretter en sikkerhetskopigren før du gjør det.
Hvordan avbryte en sammenslåing i Git
I motsetning til git revert alternativet, brukes git merge abort alternativet for å forlate en sammenslåing som er i gang for å reversere sammenslåingen og dens endringer. Hvis du avbryter en sammenslåing, tilbakestilles katalogen du jobber i til før-sammenslåingstilstanden, slik at konfliktene kan fikses før de slås sammen igjen.
Merk at dette bare fungerer hvis Git rapporterer problemer som følge av sammenslåing. Hvis sammenslåingen er vellykket, vil du ikke kunne bruke kommandoen.
Slik avbryter du en sammenslåing i Git:
- Gå til depotet der sammenslåingen pågår.
- Bruk git-status for å sjekke depotet og finne den pågående sammenslåingsprosessen.
![Hvordan tilbakestille en sammenslåing i Git Hvordan tilbakestille en sammenslåing i Git]()
- Skriv inn og utfør git merge –abort- kommandoen.
![Hvordan tilbakestille en sammenslåing i Git Hvordan tilbakestille en sammenslåing i Git]()
- Trykk Enter for å avbryte sammenslåingen.
![Hvordan tilbakestille en sammenslåing i Git Hvordan tilbakestille en sammenslåing i Git]()
Hvordan reversere en sammenslåing ved hjelp av Git Hard Reset
Git hard reset-alternativet er den kraftigste måten å angre en sammenslåing i Git. Denne kommandoen lar utviklere reversere endringer i katalogen de jobber i ved å flytte grenpekeren til en annen commit. Ulempen med dette alternativet er at det vil forkaste alle endringer i arbeidskatalogen og oppsamlingsområdet.
Følg trinnene nedenfor for å angre en sammenslåing ved hjelp av git hard reset:
- Naviger til grenen der sammenslåingen må reverseres.
- Bruk git-logg med minst –oneline- parameteren for synlighet for å se forpliktelseshistorikken din.
![Hvordan tilbakestille en sammenslåing i Git Hvordan tilbakestille en sammenslåing i Git]()
- Skriv inn git reset -hard og et mellomrom.
![Hvordan tilbakestille en sammenslåing i Git Hvordan tilbakestille en sammenslåing i Git]()
- Skriv inn commit-hashen du vil tilbakestille.
- Trykk Enter for å reversere sammenslåingen og endringene.
![Hvordan tilbakestille en sammenslåing i Git Hvordan tilbakestille en sammenslåing i Git]()
Git hard reset-alternativet er et ekstremt kraftig våpen i arsenalet ditt for å tilbakestille gjeldende gren til en spesifikk forpliktelse. Men på grunn av de vidtrekkende konsekvensene, bør den brukes med forsiktighet for å unngå tap av data. Selv om det er nyttig når du vil fullstendig slette en commit og dens tilknyttede endringer i katalogen.
Hvordan reversere en sammenslåing ved hjelp av Git Soft Reset
Den myke tilbakestillingsfunksjonen i Git tilbakestiller grenpekeren på samme måte som funksjonen for hard tilbakestilling. Det fjerner imidlertid ikke endringer i katalogen. Derfor er det nyttig når du vil angre sammenslåingen, men holder på endringene i arbeidskatalogen for senere modifikasjon.
Slik gjør du:
- Gå til grenen der sammenslåingen må reverseres.
- Skriv inn git-logg med minst –oneline- parameteren for synlighet for å se forpliktelseshistorikken din.
![Hvordan tilbakestille en sammenslåing i Git Hvordan tilbakestille en sammenslåing i Git]()
- Skriv inn git reset –soft- kommandoen. Bytt med commit-hashen du vil tilbakestille.
![Hvordan tilbakestille en sammenslåing i Git Hvordan tilbakestille en sammenslåing i Git]()
- Trykk Enter for å angre sammenslåingen med en myk tilbakestilling.
![Hvordan tilbakestille en sammenslåing i Git Hvordan tilbakestille en sammenslåing i Git]()
Hvorfor trenger du å tilbakestille en sammenslåing i Git
Funksjonen for tilbakefletting er et av de korrigerende verktøyene i Git. Det hjelper deg å reversere eventuelle feil eller utilsiktede problemer som oppstår under sammenslåing. Det kan fikse mange problemer som kommer fra å prøve å justere flere stykker kode laget av forskjellige utviklere.
Integreringsproblemer
Når filialer slås sammen kan det ofte føre til uforutsette integrasjonskonflikter som utgjør en risiko for kildekoden. Derfor er tilbakeføring av sammenslåingen en sikker måte å fjerne endringene som er ansvarlige for integrasjonsproblemene. Dette vil beholde integriteten til kildekoden intakt og gi deg tid til å rette opp feilen før du slår sammen igjen.
Bugs
I tillegg til integrasjonsproblemer, kan sammenslåing også introdusere feil. Når du slår sammen i Git, setter du i hovedsak sammen endringer som ofte ble gjort helt uavhengig. Hvis omfattende testing ikke er fullført for endringer i alle sammenslåtte grener, kan noen feil ha kommet inn i koden. Derfor vil tilbakeføring av sammenslåingene la deg gå tilbake til en stabil tilstand som vil gi deg tid til å identifisere og rette opprinnelsen til feilene.
Feil
Dette er en av de vanligste årsakene til å bruke funksjonen for tilbakekobling av sammenslåing fordi ingen er immun mot å gjøre feil. I Git kan selv små feil, som ved et uhell flettes til feil hode, føre til problemer. Heldigvis kan feil raskt reverseres ved å bruke Git Merge Revert-funksjonen.
Standarder
Koding må være presis for å fungere etter hensikten. Derfor, hvis sammenslåtte grener bringer inn kode under den forventede standarden, vil tilbakeføring av sammenslåingen fjerne subpar-koden. Dette vil tillate deg å holde kodekvaliteten på forventet nivå og sikre at den ikke bryter noen kodeprotokoller.
Samarbeid
Git er det ultimate samarbeidsverktøyet når det kommer til et team av utviklere som jobber med et prosjekt. Det åpner døren til en verden av samarbeid som lar en rekke mennesker jobbe sammenhengende sammen om programvareutvikling. Sammenslåing er en viktig funksjon fordi hvis teammedlemmer ikke kan koble sammen grenene sine, vil de rett og slett ikke være i stand til å integrere arbeidet de har gjort. Men gitt at arbeidet ble utført uavhengig, går ikke sammenslåing alltid som håpet, og å tilbakeføre sammenslåingen gir den ideelle løsningen.
Revert Merge hjelper til med å lage perfekt kode
Koding er presis og kompleks, og selv den minste feil kan overfalle til et stort problem når grener slås sammen, noe som resulterer i dysfunksjonell kode. Git revert merge-funksjonen er den perfekte mekanismen for å koble fra grener som inneholder feil, feil og lignende.
Gikk tilbakeføringen av en sammenslåing i Git som planlagt, og har du andre hacks på hvordan du kan tilbakestille en sammenslåing uten å påvirke kildekoden? Gi oss beskjed i kommentarfeltet nedenfor.