Paralelní vývoj více verzí/větví pomocí Gitu
- norbe
- Backer | 405
S kolegou jsme nedávno přešli z SVN na Git z důvodu snažšího vývoje více větví produktu. Bohužel se nám stále nedaří vytvořit workflow, jakým způsobem vyvíjet produkt souvisle v několika větvích.
Příklad:
Máme hotový CMS (větev master) s určitou funkčností.
1. přijde klient a objedná si naše služby.
2. odstranění nepotřebných modulů a provedení drobných změn, které si
klient vyžádá
3. některé změny bych chtěl rovněž jednoduše převádět zpět do
hlavní větve
4. uplyne půl roku a klient přijde s tím, že by potřeboval ještě
dodělat to a to
5. předtím, než začnu něco dělat, rád bych aktualizoval jádro systému
na nejnovější verzi z hlavní větve
6. a tak pořád dokola…
Chtěl bych tedy poprosit někoho zkušenějšího, zda by mohl nastínit/sepsat jakým způsobem výše popsaný příklad řešit.
Do bodu č.4 jsme se dostali bez problému – vytvoření nové větve v které provádíme lokální změny, bod č.3 řešíme pomocí cherry-pick, ale jak postupovat s bodem č. 5?
- Ondřej Mirtes
- Člen | 1536
Muzu doporucit knihu Pro Git, na nic.cz je zdarma v PDF jeji preklad. Pochopite, jak Git pracuje a je tam i sekce o ruznych typech workflow, takze nebudete muset vymyslet neco na kolene.
V Gitu se s vetvemi pracuje snadno, doporucuji si delat zvlastni kratkodobe vetve na kazdou novou feature a casto je pomoci merge nebo rebase synchronizovat s master. Rebase vam take na konci vyvoje te feature umozni vzit vsechny commity z dane vetve a smacknout je do jednoho, takze po zacleneni dane feature branch do masteru zustane jeho historie cista a prehledna.