Hoe twee takken in Git . samen te voegen

How Merge Two Branches Git



Elke git-repository bevat een of meer branches. De git-gebruiker maakt verschillende branches voor het opslaan van bestanden en mappen op basis van de verschillende onderwerpen. Het helpt de gebruiker om de code gemakkelijk te beheren. In het ontwikkelingsproces vereist het soms het combineren van de ene tak met de andere tak van de repository voor het projectdoel. ` git merge ` commando wordt gebruikt voor deze taak. Dit commando zoekt het gemeenschappelijke basiscommando uit door de twee commit-pointers van de samenvoegende takken te onderzoeken en genereert een nieuwe samenvoeging om de wijzigingen te combineren na het uitvoeren van het commando. Zowel lokale als externe repositories moeten worden bijgewerkt voordat de merge-opdracht wordt uitgevoerd. De manier om twee branches lokaal samen te voegen is in deze tutorial getoond.

Git-samenvoegopties

Optie Doel
-verbinden Het wordt gebruikt om het resultaat vast te leggen na het samenvoegen, en het kan worden gebruikt om -no-commit te overschrijven.
–Bewerken, -e Het wordt gebruikt om een ​​editor te openen voordat de samenvoeging wordt uitgevoerd om het automatisch gegenereerde samenvoegbericht te bewerken.
–ff Het wordt gebruikt om de merge snel op te lossen, wat betekent dat de branch-aanwijzer wordt gebruikt om overeen te komen met de samengevoegde branch, maar geen merge-commit creëert.
–nee-ff Het wordt gebruikt om een ​​merge-commit te maken in alle gevallen van de merge.
–ff-alleen Het wordt gebruikt om de samenvoeging als een fast-forward op te lossen, indien mogelijk, anders de samenvoeging weigeren en afsluiten met een niet-nulstatus.
-afmelden Het wordt gebruikt om de door de committer afgemelde regel toe te voegen aan het einde van het commit-bericht.
–geen afmelding Het wordt gebruikt om de afgemelde per regel niet toe te voegen.
-staat Het wordt gebruikt om een ​​diffstat weer te geven aan het einde van de samenvoeging.
-n, –geen-stat Het wordt gebruikt om de diffstat aan het einde van de samenvoeging niet weer te geven.
–overschrijven-negeren Het wordt gebruikt om de genegeerde bestanden uit het samenvoegresultaat te overschrijven. Dit is het standaardgedrag.
-helpen Het wordt gebruikt om gedetailleerde informatie te krijgen over alle samenvoegopties.

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 de opdrachten die in deze zelfstudie worden gebruikt, te controleren.



3. Maak een lokale en externe repository
U moet een lokale repository gebruiken met meerdere branches die zijn gepubliceerd op de externe server om de opdrachten te controleren die worden gebruikt voor het samenvoegen van twee branches van de lokale repository.



Twee takken van een lokale repository samenvoegen

Voer de volgende opdracht uit om de vertakkingslijst van de lokale repository met de naam . te controleren upload bestand .





$ git branch

De volgende uitvoer laat zien dat de repository drie takken bevat, en de hoofd tak is nu actief.



Voer de volgende opdracht uit om de inhoud van de ene branch naar de andere samen te voegen. De eerste uitchecken commando zal overschakelen naar de meester tak. De toevoegen commando zal de . toevoegen upload4.php bestand in de repository. De verbinden commando zal het commit-bericht toevoegen. Vervolgens zal het tweede checkout-commando overschakelen naar de hoofd tak. De Gaan commando zal de inhoud van de . combineren meester tak met de hoofd tak.

$ git checkout master
$ git add upload4.php
$ git commit -m 'Upload tekstbestand.'
$ git kassa hoofd
$ git merge master

De volgende uitvoer zal verschijnen na het uitvoeren van de bovenstaande commando's als: de upload4.php bestand bestaat op de huidige locatie.

Als de meester branch hoeft niet te bestaan ​​in de repository na het samenvoegen van de inhoud met de hoofd branch, dan kunt u de meester tak. De eerste branch-opdracht zal de bestaande branch-lijst weergeven voordat deze wordt verwijderd. Het branch-commando met de -NS optie zal de . verwijderen meester tak. Het laatste vertakkingscommando toont de bestaande vertakkingslijst na het verwijderen.

$ git branch
$ ls
$ git branch -d master
$ ls
$ git branch

De volgende uitvoer verschijnt na het verwijderen van de vertakking.

Voer de volgende opdrachten uit om een ​​nieuwe vertakking met de naam te maken temp , voeg een bestand toe met de naam upload5.php en commit de taak met een commit bericht. De uitchecken commando met de -B optie zal de nieuwe tak maken. De toevoegen commando zal het nieuwe bestand aan de repository toevoegen. De verbinden command zal de taak committen met het commit bericht.

$ git checkout -b temp
$ git add upload5.php
$ git commit -m Upload afbeeldingsbestand

De volgende uitvoer zal verschijnen na het uitvoeren van de bovenstaande commando's als de upload5.php bestand bestaat op de huidige locatie.

Voer de volgende opdrachten uit om de huidige filiaallijst te controleren, voeg de tijdelijke vertakking samen met: –niet-uit optie, en verwijder de temp tak als het niet meer nodig heeft.

$ git branch
$ git merge --no-ff temp
$ git branch -d temp

De volgende uitvoer zal verschijnen na het uitvoeren van de bovenstaande commando's.

Als de repository wordt geopend vanuit de GitHub-bureaublad, dan verschijnt de volgende informatie. De geschiedenis van de repository toont alle taken die zijn uitgevoerd door het uitvoeren van de git-commando's vanaf de terminal in het vorige deel van deze tutorial. Twee vastleggingsberichten en twee samenvoegbewerkingen worden weergegeven in de geschiedenislijst. Al deze taken zijn alleen in de lokale repository uitgevoerd. Als u de inhoud van de externe repository wilt bijwerken met de nieuwe wijziging van de lokale repository, klikt u op de Oorsprong trekken knop van de GitHub-bureaublad .

Conclusie

Het samenvoegen van branches is een handige functie van de branch wanneer de git-gebruikers de inhoud van twee branches willen combineren. De manier om twee bestaande vertakkingen samen te voegen en vertakkingen samen te voegen door een nieuwe vertakking aan te maken, wordt in deze tutorial getoond. Als u niet graag opdrachten in de terminal typt, kunt u de GitHub Desktop-toepassing gebruiken om twee takken van de repository samen te voegen.