Nun ke vi havas la basics de branĉantaj kaj kunfalado malsupren, kio povas aŭ devus vin fari kun ili?
En tiu sekcio, ni kovri iuj komunaj fluoj de laboro ke tiu malpeza
disbranĉadon ebligas, do vi povas decidi se vi ŝatus korpigi ĝin en via
propra disvolviĝo ciklo.
Ĉar Git uzas simplan tridirekta merge, kunfando de unu branĉo al alian
plurfoje dum longa periodo estas ĝenerale facila por fari.
Tiu signifas ke vi povas havi plurajn branĉojn kiuj estas ĉiam
malfermita kaj ke vi uzas por malsamaj etapoj de via ciklo de
disvolviĝo; vi povas kunfandi regule de iuj de ili en aliaj. Multaj Git programistoj havas laborfluo kiuj ampleksas tiu alproksimiĝo, kiel havanta nur kodo kiu estas tute stabilaj en sia master branĉo - eble nur kodo kiu estis aŭ estos publikigita. Ili alia paralela branĉo nomita develop aŭ next
ke ili laboras de aŭ uzi testi stabileco - ne nepre ĉiam stabila, sed
kiam alvenas al stabila stato, ĝi povas esti kunfandita en master . Ĝi estas uzata por tiri en temo branĉoj (mallongdaŭra branĉoj, kiel via antaŭa iss53 branĉo) kiam ili estas pretaj, por certigi ke ili pasas ĉiujn provojn kaj ne enkonduki cimojn. Fakte, ni parolas pri punteros movanta supren la linion de interna vi faras.
La stabila brancxoj estas pli malsupre la linion en via commit
historio, kaj la sangadon-rando brancxoj estas pluen ĝis la historio. Figuro 3-18. Lineara Konsiderante progresemaj-stabileco branĉantaj
Ĝi estas ĝenerale pli facile pensi pri ili kiel laboron siloj, kie aroj
de interna diplomiĝinto al pli stabila silon kiam ili estas plene
testita. Figuro 3-19. Al "silo" Konsiderante progresemaj-stabileco branĉantaj Vi povas daŭre fari tion por pluraj niveloj de stabileco. Kelkaj pli grandaj projektoj ankaŭ havas proposed aŭ pu (proponita ĝisdatigoj) branĉo kiu integris branĉoj kiuj povas ne esti preta por iri en la next aŭ master branĉo. La ideo estas ke viaj brancxoj estas ĉe diversaj niveloj de stabileco; Kiam ili atingas pli stabila nivelo, ili estas kunfandita en la branĉo super ili.
Denove, havanta multoblajn longdaŭra branĉoj ne estas necesa, sed ĝi
estas ofte helpema, speciale kiam vi pritraktas tre grandaj aŭ
kompleksaj projektoj.
Temo branĉoj, tamen, estas utila en projektoj de ajna grandeco. Al temo brancxo mallongdaŭra branĉo kiu vi krei kaj uzi por sola aparta karakterizaĵo aŭ rilata laboro. Tio estas io vi probable neniam faris kun VCS antaŭ ĉar ĝi estas ĝenerale tro multekostaj por krei kaj kunfandi branĉoj. Sed en Git estas komuna krei, labori sur, kunfandi, kaj forigi branĉoj plurfoje tage. Vi vidis tiun en la lasta sekcio de la iss53 kaj hotfix branĉoj vi kreis. Vi faris kelkajn interna ilin kaj forigita ilin rekte post kunfalado ilin en via ĉefa branĉo.
Tiu tekniko permesas kuntekstan ŝaltilo rapide kaj tute - ĉar via
laboro estas apartigita en siloj kie ĉiuj ŝanĝoj en tiu branĉo devas
vidi kun tiu temo, estas pli facile vidi kio okazis dum kodo revizio kaj
tian.
Vi povas konservi la ŝanĝojn tie por minutoj, tagoj, monatoj, kaj
kunfandi ilin en kiam ili estas pretaj, nekonsiderante la ordo en kiu
ili estis kreitaj aŭ prilaboris. Konsideri ekzemplon de fari iun laboron (sur master ), disbranĉiĝas por temo ( iss91 ), laborante en ĝi por iom, disbranĉiĝas la dua branĉo provi alimaniere pritrakti la samo ( iss91v2 ), irante reen al via master branĉo kaj laboris tie por tempeto, kaj tiam disbranĉiĝas tie fari iun laboron kiu vi ne estas certa estas bona ideo ( dumbidea branĉo). Via commit historio aspektos ion kiel jene: Figuro 3-20. Multoblaj temo branĉoj Nun diru vi decidas vin kiel la dua solvo al via problemo bona ( iss91v2 ); kaj vi montris la dumbidea branĉo al via kunlaborantoj, kaj ĝi montriĝas por geniulo. Vi povas forĵeti la originalan iss91 branĉo (perdanta faras C5 kaj C6 ) kaj kunfalas en la aliaj du. Via historio tiam aspektas tiel: Kalkuli 3-21. Historio post kunfalado dumbidea kaj iss91v2 Ni iros en pli detalo pri la diversaj eblaj fluoj de laboro por via Git projekto en Distribuita Git , do antaŭ vi decidas kion disbranĉadon skemo via venonta projekto uzos, nepre legu tiun ĉapitron. Estas grave memori, kiam vi faras cxiujn cxi tiuj branĉoj estas tute lokaj. Kiam vi branĉantaj kaj kunfalado, ĉio estas farata nur en via Git-deponejo - neniu servilo komunikado okazas.
Nenhum comentário:
Postar um comentário