Hvordan trekke endringer fra en gren til en annen i Git

How Pull Changes From One Branch Another Git



Et git -arkiv inneholder en eller flere grener for å administrere koden effektivt. Noen ganger må git -brukerne arbeide med flere grener samtidig og må bytte fra en gren til en annen gren med endringene som ble gjort i den forrige grenen til den nåværende grenen før de forplikter seg. Denne oppgaven kan utføres ved å bruke flere måter i git. Stash -kommandoen kan brukes fra terminalen og flette kommandoer fra GitHub Desktop for å trekke endringene fra en gren til en annen gren i denne opplæringen.

Forutsetninger

1. Installer GitHub Desktop
GitHub Desktop hjelper git-brukeren med å utføre de git-relaterte oppgavene grafisk. Du kan enkelt laste ned den siste installasjonsprogrammet for denne applikasjonen for Ubuntu fra github.com. Du må installere og konfigurere dette programmet etter nedlasting for å bruke det. Du kan også sjekke opplæringen for å installere GitHub Desktop på Ubuntu for å kjenne installasjonsprosessen riktig.







2. Opprett en GitHub -konto
Du må opprette en GitHub -konto for å kontrollere utseendet til det eksterne depotet etter at du har publisert endringen i det lokale depotet.



3. Opprett et lokalt depot
Du må opprette et lokalt depot for å kontrollere kommandoene som brukes i denne opplæringen.



Bruk av stash -kommando

Det lokale depotet heter PHP2 har blitt brukt i denne opplæringen for å vise hvordan du endrer endringer fra en gren til en annen gren av depotet. Lag en fil med navnet index.html i depotet. Åpne terminalen og gå til depotmappen. Kjør følgende kommandoer for å kontrollere grenlisten, bytte til hovedgrenen og vise statusen til grenen.





$ git gren
$ git checkout master
$ git status

Følgende utdata vises etter at du har utført kommandoen ovenfor. Utgangen viser at depotet inneholder to grener, og hoved grenen var aktiv i utgangspunktet. Etter å ha byttet til herre gren, viser utgangen av statusen at den nåværende grenen er aktiv og indeksen.html filen er ikke sporet.



Kjør følgende kommandoer for å spore filen som ikke er sporet og sjekke statusen til git -depotet igjen.

$ git legg til index.html
$ git status

Følgende utdata vises etter at kommandoene ovenfor er utført. Utgangen av statusen viser det indeksen.html filen blir lagt til i depotet, men må forplikte seg.

Kjør følgende kommandoer og sjekk statusen til git -depotet igjen. kommandoen `git stash` fungerer som kommandoen` git commit '. Arbeidskatalogen til depotet blir renset etter at denne kommandoen er utført.

$ git stash
$ git status

Følgende utdata vises med kommandoene ovenfor.

Etter å ha kjørt stash -kommandoen for en gren, hvis git -brukeren ønsker å trekke grenens endringer til en annen gren, kan det enkelt gjøres ved å bruke kommandoen `git stash pop` som fungerer som kommandoen` git merge '. Kjør følgende kommandoer for å bytte til hoved gren og trekk endringene fra herre gren til hoved- gren.

$ git checkout main
$ git stash pop

Følgende utdata vises etter at du har utført kommandoen ovenfor som viser at den nåværende grenen er hoved- og index.html filen er lagt til i denne grenen.

Kjør følgende kommando for å utføre den forrige oppgaven med forpliktelsesmeldingen og sjekk statusen på nytt.

$ git commit -m 'indeksfil lagt til'
$ git status

Følgende utdata vises etter at kommandoene ovenfor er utført. Utgangen av statusen viser at arbeidstreet er rent nå etter forpliktelse.

Hvis endringene i det lokale depotet skyves til det eksterne depotet, og det eksterne depotet åpnes fra github.com, ser depotet ut som følgende bilde.

Bruk av flettekommando

Denne delen av denne opplæringen viser en annen måte å trekke endringene fra en gren til en annen gren. Det lokale depotet heter lese-fil har brukt her. Lag en fil som heter read.php på depotplasseringen. Kjør følgende kommandoer for å bytte til hovedgrenen, legge til read.php -filen og utføre oppgaven. Grenkommandoen vil vise grenlisten. Kassen kommandoen vil bytte grenen til master. Statuskommandoen vil vise gjeldende status for grenen. Legg til -kommandoen vil legge til den usporede filen i depotet. Committe -kommandoen vil bekrefte oppgaven.

$ git gren
$ git checkout master
$ git status
$ git legg til read.php
$ git commit -m 'Read script is added'

Følgende utdata vises etter at kommandoene ovenfor er utført. Read.php -filen er lagt til hovedgrenen i depotet, og oppgaven har også blitt forpliktet.

Etter å ha fullført oppgaven ovenfor, hvis endringene som er gjort i herre filial krever overføring til hoved- gren, da sammenslåingen kommandoen kan brukes til å utføre denne oppgaven. Flettekommandoen kan brukes fra terminalen eller ved å bruke GitHub Desktop -programmet. Måten å bruke GitHub Desktop til å slå sammen grener har vist i denne delen av opplæringen. Åpne det lokale depotet i GitHub Desktop. Åpne grenlisten dialogboksen ved å klikke grenlisten fra Utsikt -menyen og velg hoved- gren som den aktive grenen. Klikk nå på Slå deg sammen til den nåværende grenen ... fra Gren Meny. Velg herre grenen fra dialogboksen og klikk på Slå sammen master i hoveddelen knappen for å trekke endringene av herre forgrener seg til hoved gren. Du kan slette herre filial etter at fletteoperasjonen er fullført hvis grenen ikke krever depotet.

Konklusjon

To forskjellige måter å trekke endringene fra en gren til en annen gren har blitt vist i denne opplæringen ved hjelp av to demo -lokale arkiver. De stash og kommandoer for git har blitt brukt her for å utføre oppgaven. GitHub -skrivebordet har blitt brukt i denne opplæringen for å vise måten å slå sammen grener grafisk.