Veranderingen van de ene branch naar de andere trekken in Git

How Pull Changes From One Branch Another Git



Een git-repository bevat een of meer branches om de code efficiënt te beheren. Soms moeten de git-gebruikers tegelijkertijd met de meerdere branches werken en moeten ze van de ene branch naar een andere branch overschakelen met de wijzigingen die in de vorige branch zijn gemaakt in de huidige branch voordat ze committen. Deze taak kan worden gedaan door meerdere manieren in git te gebruiken. Het stash-commando kan worden gebruikt vanaf de terminal en merge-commando's vanaf het GitHub-bureaublad om de wijzigingen van de ene branch naar een andere branch in deze tutorial te trekken.

Vereisten

1. Installeer GitHub Desktop
GitHub Desktop helpt de git-gebruiker om de git-gerelateerde taken grafisch uit te voeren. U kunt eenvoudig het nieuwste installatieprogramma van deze applicatie voor Ubuntu downloaden van github.com. U moet deze applicatie na het downloaden installeren en configureren om deze te gebruiken. Je kunt ook de tutorial voor het installeren van GitHub Desktop op Ubuntu raadplegen om het installatieproces goed te kennen.







2. Maak een GitHub-account aan
U moet een GitHub-account maken om het uiterlijk van de externe repository te controleren nadat u de wijziging van de lokale repository heeft gepubliceerd.



3. Maak een lokale repository
U moet een lokale repository maken om de opdrachten die in deze zelfstudie worden gebruikt, te controleren.



Gebruik van het stash-commando

De lokale repository genaamd PHP2 is in deze zelfstudie gebruikt om te laten zien hoe u wijzigingen van de ene vertakking naar een andere vertakking van de repository kunt trekken. Maak een bestand met de naam index.html in de bewaarplaats. Open de terminal en ga naar de repositorymap. Voer de volgende opdrachten uit om de vertakkingslijst te controleren, over te schakelen naar de hoofdvertakking en de status van de vertakking weer te geven.





$ git branch
$ git checkout master
$ git-status

De volgende uitvoer zal verschijnen na het uitvoeren van de bovenstaande opdracht. De uitvoer laat zien dat de repository twee takken bevat, en de belangrijkste tak was aanvankelijk actief. Na het overschakelen naar de meester branch, de output van de status geeft aan dat de huidige branch actief is en de index.html bestand is niet bijgehouden.



Voer de volgende opdrachten uit om het niet-getraceerde bestand te volgen en controleer de status van de git-repository opnieuw.

$ git add index.html
$ git-status

De volgende uitvoer zal verschijnen na het uitvoeren van de bovenstaande commando's. De uitvoer van de status laat zien dat: de index.html bestand wordt toegevoegd aan de repository, maar moet worden vastgelegd.

Voer de volgende opdrachten uit en controleer de status van de git-repository opnieuw. Het `git stash` commando werkt als het `git commit` commando. De werkmap van de repository wordt opgeschoond na het uitvoeren van deze opdracht.

$ git stash
$ git-status

De volgende uitvoer verschijnt bij het uitvoeren van de bovenstaande opdrachten.

Als de git-gebruiker na het uitvoeren van het stash-commando voor een branch de wijzigingen van de branch naar een andere branch wil trekken, kan dit eenvoudig worden gedaan door het `git stash pop`-commando te gebruiken dat werkt als het `git merge`-commando. Voer de volgende opdrachten uit om over te schakelen naar: de belangrijkste branch en haal de wijzigingen uit de meester aftakking naar de hoofd tak.

$ git kassa hoofd
$ git stash pop

De volgende uitvoer zal verschijnen na het uitvoeren van de bovenstaande opdracht die laat zien dat de huidige vertakking is: hoofd en de index.html bestand wordt toegevoegd aan deze tak.

Voer de volgende opdracht uit om de vorige taak vast te leggen met het vastleggingsbericht en controleer de status opnieuw.

$ git commit -m 'indexbestand toegevoegd'
$ git-status

De volgende uitvoer zal verschijnen na het uitvoeren van de bovenstaande commando's. De uitvoer van de status laat zien dat de werkboom nu schoon is na het vastleggen.

Als de wijzigingen in de lokale repository naar de externe repository worden gepusht en de externe repository wordt geopend vanuit github.com, ziet de repository eruit als de volgende afbeelding.

Gebruik van de samenvoegopdracht

Dit deel van deze tutorial laat een andere manier zien om de wijzigingen van de ene branch naar een andere branch te trekken. De lokale repository genaamd lees-bestand hier heeft gebruikt. Maak een bestand met de naam read.php in de repository-locatie. Voer de volgende commando's uit om over te schakelen naar de master branch, voeg het read.php bestand toe en commit de taak. Het vertakkingscommando geeft de vertakkingslijst weer. Het checkout-commando schakelt de branch naar master. Het statuscommando geeft de huidige status van het filiaal weer. Het add-commando voegt het niet-gevolgde bestand toe aan de repository. Het commit commando zal de taak bevestigen.

$ git branch
$ git checkout master
$ git-status
$ git add read.php
$ git commit -m 'Leesscript is toegevoegd'

De volgende uitvoer zal verschijnen na het uitvoeren van de bovenstaande commando's. Het read.php-bestand is toegevoegd aan de master-branch van de repository en de taak is ook vastgelegd.

Als na het voltooien van de bovenstaande taak de wijzigingen zijn aangebracht in de meester tak vereist overdracht naar de hoofd tak, dan de fusie commando kan worden gebruikt om deze taak uit te voeren. De merge-opdracht kan worden gebruikt vanaf de terminal of met behulp van de GitHub Desktop-toepassing. De manier om GitHub Desktop te gebruiken om branches samen te voegen, wordt getoond in dit deel van de tutorial. Open de lokale repository in GitHub Desktop. Open het dialoogvenster met de vertakkingslijst door te klikken op de Takkenlijst van de Weergave menu en selecteer de hoofd vertakking als de actieve vertakking. Klik nu op de Samenvoegen met de huidige tak… van de Tak menu. Selecteer de meester vertakking uit het dialoogvenster en klik op de Voeg master samen in de main knop om de wijzigingen van de meester vertakken in de belangrijkste tak. U kunt de . verwijderen meester branch na het voltooien van de samenvoegbewerking als de branch de repository niet nodig heeft.

Conclusie

Twee verschillende manieren om de wijzigingen van de ene branch naar een andere branch te trekken zijn in deze tutorial getoond met behulp van twee demo lokale repositories. De opbergen en Gaan commando's van git zijn hier gebruikt om de taak uit te voeren. De GitHub Desktop is in deze tutorial gebruikt om de manier te tonen om branches grafisch samen te voegen.