Hvordan løses Git Merge 'CONFLICT'?

Hvordan Loses Git Merge Conflict



Sammenfletning er en væsentlig del, mens du arbejder med flere grene af et Git lokalt lager. Det er nødvendigt, når udviklere arbejder på forskellige moduler af det samme projekt i individuelle grene, fordi brugerne skal skubbe alle ændringerne til fjernserveren for samarbejde. Mens de udfører fletning, støder brugere ofte på eros eller konflikter. For eksempel findes to filer med samme navn i forskellige grene. Indholdet af begge filer er dog forskelligt, og de ønsker at flette. I dette scenarie vil der opstå konflikt.

Denne opskrivning vil angive metoden til at løse Git-fletningskonflikten.

Når Git Merge 'CONFLICT' opstår?

Git-konflikten opstår, når den samme fil findes i forskellige grene med forskelligt indhold. Ydermere kan det også forekomme, når en specificeret fil slettes fra en gren, men redigeres i den anden gren.







Følg nedenstående trin for at forstå, hvornår flettekonflikten opstår:



  • Naviger til det angivne lager.
  • Generer en fil og opdater den.
  • Spor filen i iscenesættelsesområdet og bekræft ændringerne.
  • List alle grene og skift til en anden gren.
  • Flet grene ved at køre ' git merge ” kommando.

Trin 1: Omdiriger det angivne lager

Åbn Git Bash-terminalen, brug ' cd kommandoen, og naviger mod det angivne lager:



cd 'C:\Users\user\Git\projectrepo'

Trin 2: Generer en fil

Opret derefter en ny fil ved hjælp af ' røre ved kommando:





røre ved fil1.txt

Trin 3: Åbn Fil i Editor

Brug ' Start kommando med filnavnet for at starte filen med standardeditoren:



start fil1.txt

Det resulterende output indikerer, at editoren er blevet åbnet. Tilføj indhold og luk filen efter at have gemt den:

Trin 4: Tilføj fil i iscenesættelsesområde

Tilføj nu den ændrede fil til iscenesættelsesområdet ved hjælp af ' git tilføje kommando til videre behandling:

git tilføje fil1.txt

Trin 5: Bekræft ændringer

Bekræft alle ændringer ved at udføre ' git commit ” kommando og angiv en meddelelse ved at bruge -m ' mulighed:

git commit -m 'fil opdateret og tilføjet'

Trin 6: Liste over filialer

List nu alle grene ved at køre ' git gren kommando:

git gren

Det medfølgende billede viser, at alle grene er blevet vist på konsollen:

Trin 7: Skift filial

For at skifte fra en gren til en anden skal du udføre ' git checkout ” kommando og tilføj filialnavnet, hvor du vil flytte:

git checkout funktion 2

Som et resultat har vi med succes skiftet fra ' alfa ' til ' funktion 2 ' afdeling:

Trin 8: Opret en fil

I dette angivne trin skal du generere den samme fil af ' alfa ” gren med samme udvidelse:

røre ved fil1.txt

Trin 9: Åbn filen

Brug den medfølgende kommando til at åbne filen med standardeditoren og tilføje indhold:

start fil1.txt

Trin 10: Spor filen i iscenesættelsesområde

Udfør ' git tilføje ” kommando for at skubbe filen fra arbejdsområdet til iscenesættelsesområdet:

git tilføje fil1.txt

Trin 11: Bekræft ændringer

Bekræft nu ændringer ved at køre nedenstående kommando sammen med commit-meddelelsen:

git commit -m 'fil tilføjet og opdateret i feature2-gren'

Trin 12: Flet filialer

Brug derefter ' git merge ' kommando for at flette ' funktion 2 ' med ' alfa ' afdeling:

git merge alfa

Ifølge det leverede output, ' KONFLIKT: Flet konflikt i fil1.txt ' er blevet stødt på:

Kontroller, hvor konflikten støder på i den angivne fil ved at køre ' Start kommando:

start fil1.txt

Det kan bemærkes, at indholdet af begge de samme filer er forskelligt fra hinanden:

Trin 13: Afbryd fletning

Brug ' git merge kommandoen sammen med ' -abort ' mulighed for at fjerne fletningsoperationen:

git merge --abort

Gå videre for at løse den angivne konflikt, der opstår i ovenstående afsnit.

Hvordan løses Git Merge-konflikter?

Følg nedenstående procedure for at løse Git-fletningskonflikten:

  • Åbn filen, hvor konflikten opstår, og rediger den.
  • Spor og forpligt ændringerne.
  • Til sidst skal du flette begge grene.

Trin 1: Rediger filen

Åbn filen med standardeditoren og rediger indholdet i henhold til ' alfa ' filialens fil:

start fil1.txt

Det kan ses, at filen er blevet ændret. Tryk derefter på ' CTRL+S ' og gem det:

Trin 2: Spor fil

Tilføj filen fra arbejdsmappen til iscenesættelsesområdet ved at køre den medfølgende kommando:

git tilføje fil1.txt

Trin 3: Bekræft ændringer

For at foretage alle ændringer, brug ' git commit kommando:

git commit -m 'ændret fil er blevet tilføjet'

Som følge heraf er ændringerne blevet gennemført med succes:

Trin 4: Flet filialer

Kør nu ' git merge ” gren sammen med det andet grennavn:

git merge alfa

Som et resultat vil teksteditoren åbne og bede om en tilføjelsesbesked. Rediger commit-meddelelsen, og luk den efter at have gemt:

Nedenstående output viser, at Git-fletningskonflikten er blevet løst og flettede grene med succes:

Det handler om at løse Git-fusionskonflikten.

Konklusion

Git-fletningskonflikten opstår, når den samme fil ændres i to forskellige grene med forskelligt indhold. For at løse denne angivne konflikt skal du åbne den samme fil og ændre dens indhold i overensstemmelse med den anden filialfil. Føj det derefter til iscenesættelsesområdet og begå det. Til sidst skal du bruge ' git merge ” kommando for at flette grene. Dette indlæg har angivet metoden til at løse Git-fusionskonflikten.