Info Tento blog je v "read-only módu" a nový obsah již nebude přibývat. O vývoji píšu na DevBlog.

SVN a jak vytvořit správny layout repository

Subversion jsem jakž takž zvládl, klient TortoiseSVN ještě věci dokáže usnadnit, takže snad budu moct svůj první verzovací systém konečně používat. Nyní však stojím před architektonickým rozhodnutím, jaký layout pro repository zvolit.

Projekt vypadá následovně: mnoho adresářů, mnoho souborů, všechna aplikační logika zabírá několik málo stovek kB, adresář s obrázky má asi 70 MB a obsahuje tisíce souborů. Možnosti:

1. Do repository nacpat úplně všechno
+ v repository je přesný obraz stavu webu v daném časovém okamžiku
- repository bude mít mnoho MB (zhruba tolik, jak je velká sama složka s projektem)
- operace budou probíhat pomalu

2. Do repository dát pouze aplikační logiku
+ malinké snadno zálohovatelné repository
+ rychlé operace
- pro sestavení obrazu webu v čase T je potřeba provést další operace (nakopírovat neverzované soubory/adresá­ře)

3. Do jednoho repository dát aplikační logiku a obrázky dát do jiného repository
= SVN umí do jednoho adresáře namíchat data z více repository
+ všechno je verzováno
+ aplikační repository zůstává malé, snadno zálohovatelné a rychlé
+ repository obrázků slouží jako efektivní „záložiště“
+ konzistentní práce (vše je v SVN, ne každý pes jiná ves)
- ??? (komplikované nápady bývají špatné nápady)

Po uvážení a drobné konzultaci na forum.builder.cz jsem se rozhodl zvolit možnost 2, přičemž nikdy není pozdě přejít k variantě 3. Varianta 1 bohužel znamená spálení mostů, repository zůstane velké i po případném svn delete obrázků.

Zařazeno do kategorií |
Franta (Čt, 2007-01-11 11:49):

Tady je důležité, jestli ty obrázky jsou součástí aplikace (tlačítka, pozadí do GUI…), nebo jestli to jsou uživatelská data.

Jestli je to součást aplikace, tak by určitě měly být v SVN (ale těch asi nebude 70 MB). Protože třeba v javě program nemusí vůbec fungovat, když nenajde ikony (pokud to není nějak zvlášť ošetřené).

Pokud to jsou uživatelská data, tak je velmi vhodné je oddělit od vlastní aplikace, matlat to do jednoho je prasárna. Doporučoval bych vyvíjet aplikaci s pár ukázkovými obrázky, ty mít možná i v SVN. A skutečná data pro ostrý provoz mít někde vedle, třeba v jiném SVN.

Komentáře jsou uzavřeny (blog je v read-only módu). Pokud mě chcete kontaktovat, můžete mailem.