Git

Grunderna för Git-sammanslagning och radering av filialer

Grunderna för Git-sammanslagning och radering av filialer
Förgrening kan hjälpa dig att hålla ditt arbete organiserat. Du måste dock kunna slå samman ditt arbete för att göra arbetet sammanhängande. Om du aldrig slår samman och tar bort grenarna kan din historia bli för kaotisk för att förstå.

Arbeta med sammanslagning och radering av grenar

Låt oss först skapa en huvudfilial, lägga in några åtaganden, skapa en ny gren som heter funktioner, lägga till några åtaganden, sedan komma tillbaka till befälhavaren och begå igen. Här är kommandona:

$ mkdir mygame
$ cd mygame
$ git init
$ echo "Design Decision 1: Brainstarm" >> design.Text
$ git add -A
$ git commit -m "C0: Started Project"
$ echo "Design Decision 2: Write Code" >> design.Text
$ git add -A
$ git commit -m "C1: Inskickad kod"
$ git filialfunktioner
$ git kassafunktioner
$ echo "Lägg till funktion 1" >> -funktionen.Text
$ git add -A
$ git commit -m "C2: Feature 1"
$ echo "Lägg till funktion 2" >> -funktionen.Text
$ git add -A
$ git commit -m "C3: Feature 2"
$ git checkout master
$ echo "Modifying Master Again" >> design.Text
$ git add -A
$ git commit -m "C4: Master Modified"

Ovanstående kommandon skapade följande situation:

Du kan kontrollera historien för de två filialerna för att se vilka åtaganden de har:

$ git-status
På filialmästaren
inget att begå, arbetar katalogen ren
$ git log - online
2031b83 C4: Master Modified
1c0b64c C1: Inlämnad kod
 
$ git kassafunktioner
Bytt till filialfunktioner
 
$ git log - online
93d220b C3: Funktion 2
ad6ddb9 C2: Funktion 1
1c0b64c C1: Inlämnad kod
ec0fb48 C0: Startat projekt

Låt oss nu anta att du vill ta alla ändringar från funktionsgrenen till vår huvudfilial. Du måste starta processen från fusionens destination. Eftersom vi vill gå samman med huvudgrenen måste du starta processen därifrån. Så låt oss kolla in huvudgrenen:

$ git checkout master
Bytt till filial "master"
 
$ git-status
På filialmästaren
inget att begå, arbetar katalogen ren

Låt oss nu skapa sammanslagningen:

$ git merge-funktioner

Om det inte finns några konflikter i sammanslagningen får du en textredigerare med kommentarer:

Slå samman filialens funktioner
 
# Ange ett engagemangsmeddelande för att förklara varför denna sammanslagning är nödvändig,
# särskilt om det slår samman en uppdaterad uppströms till en ämnesgren.
#
# Rader som börjar med '#' ignoreras och ett tomt meddelande avbryts
# förpliktelsen.

Du kan ändra kommentarerna eller acceptera standardkommentarerna. Sammanfogningsutgången ska visa resultat så här:

Sammanfogning görs med den "rekursiva" strategin.
funktion.txt | 2 ++
1 fil ändrad, 2 infogningar (+)
skapa läge 100644-funktionen.Text

Efter sammanslagningen har du följande villkor:

Om du kontrollerar loggarna hittar du:

$ git-status
På filialmästaren
inget att begå, arbetar katalogen ren
 
$ git log - online
46539a3 C5: Slå samman filialens funktioner
2031b83 C4: Master Modified
93d220b C3: Funktion 2
ad6ddb9 C2: Funktion 1
1c0b64c C1: Inlämnad kod
ec0fb48 C0: Startat projekt

Du har slagit samman ändringarna. Funktionsgrenen är dock fortfarande närvarande.

$ git gren -a
funktioner
* mästare

Du kan radera det med följande kommando:

$ git gren -d funktioner

Om du checkar nu ska du bara se huvudgrenen:

$ git gren -a
* mästare

Slutsats

Se till att du regelbundet letar efter oanvända grenar och tar bort dem. Du vill hålla ditt förråd rent för att göra det enkelt att navigera och förstå.

Vidare läsning:

Shadow of the Tomb Raider for Linux Tutorial
Shadow of the Tomb Raider är det tolfte tillskottet till Tomb Raider-serien - en action-äventyrsspelfranchise skapad av Eidos Montreal. Spelet mottogs...
Hur man förbättrar FPS i Linux?
FPS står för Bildrutor per sekund. FPS: s uppgift är att mäta bildfrekvensen i videouppspelningar eller spelprestanda. Med enkla ord betecknas antalet...
De bästa Oculus App Lab-spelen
Om du är Oculus-headsetägare måste du vara förtjust i sidoladdning. Sideladdning är processen för att installera icke-butiksinnehåll på ditt headset. ...