Treballar amb Fusió i supressió de sucursal
Primer creem una branca mestra, introduïm algunes confirmacions, creem una branca nova anomenada funcions, afegim unes quantes confirmacions i, a continuació, tornem a mestre i torneu a confirmar. Aquí teniu les ordres:
$mkdirel meu joc
$cdel meu joc
$git init
$trobo 'Decisió de disseny 1: Brainstarm' >>design.txt
$git add -A
$git commit -m 'C0: Projecte iniciat'
$trobo 'Decisió de disseny 2: escriure codi' >>design.txt
$git add -A
$git commit -m 'C1: codi enviat'
$branca gitcaracterístiques
$git checkoutcaracterístiques
$trobo 'Afegeix la funció 1' >>feature.txt
$git add -A
$git commit -m 'C2: funció 1'
$trobo 'Afegeix la funció 2' >>feature.txt
$git add -A
$git commit -m 'C3: funció 2'
$git checkoutmestre
$trobo 'Màster modificador de nou' >>design.txt
$git add -A
$git commit -m 'C4: Màster modificat'
Les ordres anteriors van crear la situació següent:
Podeu consultar l'historial de les dues branques per veure quins compromisos tenen:
$estat git
Al mestre de sucursal
res a comprometre, directori de treball net
$registre de git --oneline
2031b83 C4: Mestre modificat
1c0b64c C1: codi enviat
$git checkoutcaracterístiques
S'ha canviat a sucursal'característiques'
$registre de git --oneline
93d220b C3: funció2
ad6ddb9 C2: funció1
1c0b64c C1: codi enviat
ec0fb48 C0: Projecte iniciat
Suposem que voleu portar tots els canvis de la branca de funcions a la nostra branca mestra. Haureu d'iniciar el procés des de la destinació de la combinació. Com que volem fusionar-nos a la branca mestra, heu d'iniciar el procés a partir d'aquí. Així que anem a veure la branca mestra:
$git checkoutmestreS'ha canviat a sucursal'mestre'
$estat git
Al mestre de sucursal
res a comprometre, directori de treball net
Ara anem a crear la combinació:
$git mergecaracterístiques
Si no hi ha conflictes a la combinació, obtindreu un editor de text amb els comentaris:
Combina la branca'característiques'# Introduïu un missatge de confirmació per explicar per què és necessària aquesta combinació,
# especialment si combina una actualització de la pujada actualitzada en una branca de tema.
#
# Les línies que comencin per '#' s'ignoraran i s'abortarà un missatge buit
# el commit.
Podeu modificar els comentaris o acceptar els predeterminats. La sortida de combinació hauria de mostrar resultats com aquest:
Fusió feta per la'recursiu'estratègia.feature.txt| 2++
1 dossiercanviat,2insercions(+)
mode de creació100.644feature.txt
Després de la combinació, teniu la condició següent:
Si comproveu els registres, trobareu:
$estat gitAl mestre de sucursal
res a comprometre, directori de treball net
$registre de git --oneline
46539a3 C5: combinar la branca'característiques'
2031b83 C4: Mestre modificat
93d220b C3: funció2
ad6ddb9 C2: funció1
1c0b64c C1: codi enviat
ec0fb48 C0: Projecte iniciat
Heu combinat els canvis amb èxit. Tot i això, la branca de funcions encara és present.
$branca git -acaracterístiques
*mestre
Podeu eliminar-lo amb l'ordre següent:
$branca git -dcaracterístiquesSi ho marqueu ara, només hauríeu de veure la branca mestra:
$branca git -a*mestre
Conclusió
Assegureu-vos de comprovar periòdicament si hi ha sucursals no utilitzades i suprimiu-les. Voleu mantenir el vostre dipòsit net per facilitar la navegació i la comprensió.