Portál AbcLinuxu, 13. května 2025 19:49

Dotaz: Jak udržovat dvě verze programu v SVN?

14.7.2008 09:38 ondra
Jak udržovat dvě verze programu v SVN?
Přečteno: 443×
Odpovědět | Admin
Zdravíčko. Začal jsem používat Subversion pro správu projektu a chtěl bych se zeptat, jak řešit např. následující situaci: dokončil jsem projekt, který je nyní ve verzi např. 1.0. Vypustím ho do světa a začnu pracovat na verzi 2.0 s novými funkcemi. Žel bohu ve verzi 1.0 je později objevena chybka a já potřebuju udělat novou binárku. Jak správně udržovat "devel" a "stable" větve jednoho programu, abych nyní nemusel opravit stejnou chybu jak ve verzi 1.0, tak ve verzi 2.0 (tzn. aby stačilo chybu opravit jen v 1.0 s tím že se to projeví ve 2.0) - je to vlastně vůbec nějak možné? Děkuju za vysvětlení, ondra
Nástroje: Začni sledovat (1) ?Zašle upozornění na váš email při vložení nového komentáře.

Odpovědi

14.7.2008 10:07 podlesh | skóre: 38 | Freiburg im Breisgau
Rozbalit Rozbalit vše Re: Jak udržovat dvě verze programu v SVN?
Odpovědět | | Sbalit | Link | Blokovat | Admin
Doufám že neurazím trochou RTFM :-)

http://svnbook.red-bean.com/en/1.4/svn.branchmerge.html

http://svnbook.red-bean.com/en/1.4/svn.branchmerge.commonuses.html#svn.branchmerge.commonuses.patterns.release
Marián Oravec avatar 14.7.2008 11:31 Marián Oravec | skóre: 22 | Nitra
Rozbalit Rozbalit vše Re: Jak udržovat dvě verze programu v SVN?
Odpovědět | | Sbalit | Link | Blokovat | Admin
Stabilnú verziu (1.0) budete vyvíjať (resp. už len opravovať prípadné chyby) v trunk vetve. Novú verziu (2.0) budete vyvíjať v branche vetve. V prípade, že budete chcieť preniesť zmeny vykonané v 1.0 do 2.0, spravíte merge medzi týmito vetvami. Merge je niečo ako zobrať zmeny vykonané v jednej vetve za určitý čas a aplikovať ich vo vetve druhej (niekedy bezbolestné, niekedy takmer neriešiteľné :-) ).
Mám rád elektro, ale vypočujem si aj iné...
14.7.2008 15:47 pht | skóre: 48 | blog: pht
Rozbalit Rozbalit vše Re: Jak udržovat dvě verze programu v SVN?
nemel by trunk byt spis nejnovejsi (tj 2.0) ?
In Ada the typical infinite loop would normally be terminated by detonation.
14.7.2008 15:50 dustin | skóre: 63 | blog: dustin
Rozbalit Rozbalit vše Re: Jak udržovat dvě verze programu v SVN?
Taky mi to tak přijde.
Marián Oravec avatar 15.7.2008 14:42 Marián Oravec | skóre: 22 | Nitra
Rozbalit Rozbalit vše Re: Jak udržovat dvě verze programu v SVN?
Všetko je to vec názoru, ale podľa SVN best practices (časť The Branch-When-Needed system) by malo platiť, že /trunk by sa mal dať vždy skompilovať -- a to sa pri veľkých zmenách (čo pri zmene major verzie väčšinou nastáva) nedá dosiahnuť.
Mám rád elektro, ale vypočujem si aj iné...
15.7.2008 14:55 Filip Jirsák | skóre: 68 | blog: Fa & Bi
Rozbalit Rozbalit vše Re: Jak udržovat dvě verze programu v SVN?
Ona by měla jít vždy zkompilovat jakákoli verze, která je ve VCS. Trunk je obdoba Headu v CVS a měl by tam být ten nejaktuálnější kód. Verze 1.0 není ničím významná, aby měla být označena jako trunk a všechny ostatní release verze by už byly tagované. Navíc pokud uděláte na té 1.0 změnu, kterou distribuujete, je vhodné i tu změnu otagovat, třeba 1.0.1. Kdyý se podíváte do OSS projektů používajících SVN, používají také v drtivé většině případů trunk jako vývojovou větev a jednotlivé vydané verze se pak tagují.

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.