Sådan trækker du ændringer fra en gren til en anden i Git

How Pull Changes From One Branch Another Git



Et git -lager indeholder en eller flere grene til effektivt at styre koden. Nogle gange er git -brugerne nødt til at arbejde med de flere grene samtidigt og skal skifte fra en gren til en anden gren med de ændringer, der er foretaget i den foregående gren til den nuværende gren, før de forpligter sig. Denne opgave kan udføres ved at bruge flere måder i git. Stash -kommandoen kan bruges fra terminalen og flette kommandoer fra GitHub Desktop til at trække ændringerne fra en gren til en anden gren i denne vejledning.

Forudsætninger

1. Installer GitHub Desktop
GitHub Desktop hjælper git-brugeren med at udføre de git-relaterede opgaver grafisk. Du kan nemt downloade den nyeste installationsprogram til denne applikation til Ubuntu fra github.com. Du skal installere og konfigurere dette program efter download for at bruge det. Du kan også tjekke selvstudiet til installation af GitHub Desktop på Ubuntu for at kende installationsprocessen korrekt.







2. Opret en GitHub -konto
Du skal oprette en GitHub -konto for at kontrollere fjernlagerets udseende efter offentliggørelse af ændringen af ​​det lokale arkiv.



3. Opret et lokalt lager
Du skal oprette et lokalt lager for at kontrollere kommandoerne, der bruges i denne vejledning.



Brug af stash -kommando

Det lokale depot hedder PHP2 er blevet brugt i denne vejledning til at vise, hvordan man trækker ændringer fra en gren til en anden gren af ​​depotet. Opret en fil med navnet index.html i depotet. Åbn terminalen, og gå til arkivmappen. Kør følgende kommandoer for at kontrollere filialisten, skifte til hovedgrenen og vise filialens status.





$ git gren
$ git checkout master
$ git status

Følgende output vises efter udførelse af ovenstående kommando. Outputtet viser, at depotet indeholder to grene og det vigtigste filial var aktiv i starten. Efter at have skiftet til mestre gren, viser output fra status, at den aktuelle gren er aktiv og indekset.html filen er ikke sporet.



Kør følgende kommandoer for at spore den usporede fil og kontrollere status for git -depotet igen.

$ git tilføj index.html
$ git status

Følgende output vises efter udførelse af ovenstående kommandoer. Output af status viser det indekset.html filen tilføjes til depotet, men skal forpligte sig.

Kør følgende kommandoer, og kontroller status for git -depotet igen. kommandoen 'git stash' fungerer som kommandoen 'git commit'. Lagermaskinens arbejdskatalog renses efter udførelse af denne kommando.

$ git stash
$ git status

Følgende output vises med henvisning til ovenstående kommandoer.

Efter at have kørt stash -kommandoen for en gren, hvis git -brugeren ønsker at trække filialens ændringer til en anden gren, kan det let gøres ved at bruge kommandoen 'git stash pop', der fungerer som kommandoen 'git fusion'. Kør følgende kommandoer for at skifte til det vigtigste gren og træk ændringerne fra mestre gren til vigtigste afdeling.

$ git checkout main
$ git stash pop

Følgende output vises efter udførelse af ovenstående kommando, der viser, at den aktuelle gren er vigtigste og index.html fil tilføjes i denne gren.

Kør følgende kommando for at udføre den forrige opgave med forpligtelsesmeddelelsen og kontrollere status igen.

$ git commit -m 'indeksfil tilføjet'
$ git status

Følgende output vises efter udførelse af ovenstående kommandoer. Output af status viser, at arbejdstræet er rent nu efter forpligtelse.

Hvis de lokale lagringsændringer skubbes til fjernlageret, og fjernlageret åbnes fra github.com, ser depotet ud som følgende billede.

Brug af flettekommando

Denne del af denne vejledning viser en anden måde at trække ændringerne fra en gren til en anden gren. Det lokale depot hedder læse-fil har brugt her. Opret en fil med navnet read.php på lagerplaceringen. Kør følgende kommandoer for at skifte til hovedgrenen, tilføj filen read.php og udfør opgaven. Filialkommandoen viser filialisten. Checkout -kommandoen skifter grenen til master. Statuskommandoen viser filialens aktuelle status. Tilføj -kommandoen tilføjer den usporede fil i depotet. Committe -kommandoen bekræfter opgaven.

$ git gren
$ git checkout master
$ git status
$ git tilføj read.php
$ git commit -m 'Læs script tilføjes'

Følgende output vises efter udførelse af ovenstående kommandoer. Read.php -filen er tilføjet til master -grenen af ​​depotet, og opgaven er også blevet forpligtet.

Efter at have udført ovenstående opgave, hvis de ændringer, der er foretaget i mestre filial kræver overførsel til vigtigste gren, altså fusionen kommando kan bruges til at udføre denne opgave. Fletningskommandoen kan bruges fra terminalen eller ved hjælp af GitHub Desktop -applikationen. Måden at bruge GitHub Desktop til at flette grene har vist i denne del af selvstudiet. Åbn det lokale lager i GitHub Desktop. Åbn filialisten dialogboksen ved at klikke listen over filialer fra Udsigt menuen, og vælg vigtigste gren som den aktive gren. Klik nu på Flet ind i den nuværende filial ... fra Afdeling menu. Vælg mestre filial fra dialogboksen, og klik på Flet master til main knappen for at trække ændringerne af mestre forgrener sig til det vigtigste afdeling. Du kan slette mestre filial efter afslutning af fletteoperationen, hvis filialen ikke kræver depotet.

Konklusion

To forskellige måder at trække ændringerne fra en gren til en anden filial er blevet vist i denne vejledning ved hjælp af to demolokaler. Det gemme og kommandoer af git er blevet brugt her til at udføre opgaven. GitHub Desktop er blevet brugt i denne vejledning til at vise måden at fusionere grene grafisk.