Git

Basisprincipes van Git samenvoegen en verwijderen van branches

Basisprincipes van Git samenvoegen en verwijderen van branches
Vertakkingen kunnen u helpen uw werk georganiseerd te houden. U moet uw werk echter kunnen samenvoegen om het werk coherent te maken. Als je de branches nooit samenvoegt en verwijdert, kan je geschiedenis te chaotisch worden om te begrijpen.

Werken met samenvoegen en vertakking verwijderen

Laten we eerst een master-branch maken, een paar commits plaatsen, een nieuwe branch maken met de naam features, een paar commits toevoegen, dan terugkomen naar de master en opnieuw committen. Dit zijn de commando's:

$ mkdir mijngame
$ cd mijnspel
$ git init
$ echo "Ontwerpbeslissing 1: Brainstarm" >> ontwerp.tekst
$ git add -A
$ git commit -m "C0: Gestart project"
$ echo "Ontwerpbeslissing 2: Schrijf code" >> ontwerp.tekst
$ git add -A
$ git commit -m "C1: Ingediende code"
$ git branch-functies
$ git checkout-functies
$ echo "Functie 1 toevoegen" >> functie.tekst
$ git add -A
$ git commit -m "C2: Functie 1"
$ echo "Functie 2 toevoegen" >> functie.tekst
$ git add -A
$ git commit -m "C3: Functie 2"
$ git checkout master
$ echo "Master opnieuw wijzigen" >> ontwerp.tekst
$ git add -A
$ git commit -m "C4: Master gewijzigd"

De bovenstaande commando's hebben de volgende situatie gecreëerd:

Je kunt de geschiedenis van de twee branches bekijken om te zien welke commits ze hebben:

$ git-status
Op branch master
niets te committen, werkmap opschonen
$ git log --oneline
2031b83 C4: Master gewijzigd
1c0b64c C1: Ingediende code
 
$ git checkout-functies
Overgeschakeld naar branch 'features'
 
$ git log --oneline
93d220b C3: Functie 2
ad6ddb9 C2: Functie 1
1c0b64c C1: Ingediende code
ec0fb48 C0: Gestart project

Laten we nu aannemen dat je alle wijzigingen van de features branch naar onze master branch wilt brengen. U moet het proces starten vanaf de bestemming van de samenvoeging. Omdat we willen mergen in de master branch, moet je het proces vanaf daar starten. Dus laten we eens kijken naar de master branch:

$ git checkout master
Overgeschakeld naar tak 'master'
 
$ git-status
Op branch master
niets te committen, werkmap opschonen

Laten we nu de samenvoeging maken:

$ git merge-functies

Als er geen conflicten zijn bij het samenvoegen, krijgt u een teksteditor met de opmerkingen:

Branch 'functies' samenvoegen
 
# Voer een commit-bericht in om uit te leggen waarom deze samenvoeging nodig is,
# vooral als het een bijgewerkte upstream samenvoegt in een topic branch.
#
# Regels die beginnen met '#' worden genegeerd en een leeg bericht wordt afgebroken
# de commit.

U kunt de opmerkingen wijzigen of de standaard opmerkingen accepteren. De samenvoeguitvoer zou de volgende resultaten moeten weergeven:

Samenvoeging gemaakt door de 'recursieve' strategie.
voorzien zijn van.txt | 2 ++
1 bestand gewijzigd, 2 invoegingen (+)
aanmaakmodus 100644-functie.tekst

Na de samenvoeging heb je de volgende voorwaarde:

Als u de logboeken bekijkt, vindt u:

$ git-status
Op branch master
niets te committen, werkmap opschonen
 
$ git log --oneline
46539a3 C5: Vertakking 'functies' samenvoegen
2031b83 C4: Master gewijzigd
93d220b C3: Functie 2
ad6ddb9 C2: Functie 1
1c0b64c C1: Ingediende code
ec0fb48 C0: Gestart project

Je hebt de wijzigingen succesvol samengevoegd. De functietak is echter nog steeds aanwezig.

$ git branch -a
Kenmerken
* meester

Je kunt het verwijderen met het volgende commando:

$ git branch -d functies

Als je nu aanvinkt, zou je alleen de master branch moeten zien:

$ git branch -a
* meester

Conclusie

Controleer regelmatig op ongebruikte takken en verwijder ze. U wilt uw repository schoon houden zodat het gemakkelijk te navigeren en te begrijpen is.

Verder lezen:

Gratis en open source game-engines voor het ontwikkelen van Linux-games
Dit artikel behandelt een lijst met gratis en open source game-engines die kunnen worden gebruikt voor het ontwikkelen van 2D- en 3D-games op Linux. E...
Shadow of the Tomb Raider voor Linux-zelfstudie
Shadow of the Tomb Raider is de twaalfde toevoeging aan de Tomb Raider-serie - een actie-avonturengame-franchise gemaakt door Eidos Montreal. De game ...
Hoe FPS te verhogen in Linux?
FPS staat voor Beelden per seconde. De taak van FPS is om de framesnelheid te meten bij het afspelen van video's of speluitvoeringen. In eenvoudige wo...