ugrás a tartalomhoz

keretrendszerek-libraryk bevezetése, verziókezelése

kalamona · 2008. Júl. 11. (P), 15.13
Sziasztok!

Adott egy csomó változatos weblap / webalkalmazás egy cégnél, amik különféle külső osztálykönyvtárakat (pear komponensek, phpmailer, adodb, egy rakat nem "szabványos" 3rd party osztály) használnak meglehetősen kaotikusan, tudjátok mindig ami éppen kellett az előttem dolgozó iparosoknak.

Ezek minden alkalmazáshoz külön vannak telepítve, nincsen közös kódbázis. Szeretnék rendet csinálni és rendszert kialakítani. Hogy legyen egy közös könyvtár ahol ott van minden és közösen használja a rengeteg oldal. Ezeket frissíteném is rendszeresen. Plusz be szeretném vezetni alapvetően a Zend Framework-re való építkezést.

Aggodalmam a frissítések miatt van, hogy mi van, ha nem 100%-ig kompatibilis egy új verzió valamelyik osztályból és emiatt hirtelen 50 ügyfélnek hal be a oldala... Pont ezért szeretnék főleg ZF-re átállni, ott azért csak nem változik összevissza az API.

Arra gondoltam kellene egy módszer amivel párhuzamosan fel tudom tenni a régi mellé az új verziót, és beállítani először egy szűkebb körnek, ha problémamentes, akkor frissüljön mindenkinél. De lehet teljesen máshogy is
pl tesztmásolatot készíteni az oldalakból és belsőleg teszteli őket az új libekkel, hogy kifelé tényleg már csak a tesztelt, flottul hasító frissített cucc mehessen.

Ezt szeretném, minél automatizáltabban, gányolásmentesebben, profibban megvalósítani. Minden megoldás érdekel! :)
 
1

svn:external

Hodicska Gergely · 2008. Júl. 11. (P), 16.42
Az svn:extarnal property-vel ezt szerintem meg tudod csinálni. Van monduk egy vendor repod. Itt mindegyik cuccnak van egy konyvtára, ami alatt ott vannak a különböző verziók. Ezután ezeket a verzió könyvtárakat kötöd be a projektjeidbe. Ott is esetleg megteheted, hogy van egy vendor könyvtárad, benne a cucc könyvtára, és abban lehet több verzió is belinkelve. Az meg hogy melyik legyen belinkelve, az kb. az alakalmazás konfig feladata. Lehet egy default, és akkor akár userenként, vagy adott IP-ról nézve, valamlyen spéci URL paraméterrel ezt felül lehet írni, és akkor a tesz verziót fogja használni. Ha a projekten belül valamelyik verzióra nincs szükséged, akkor csak kiszeded a linket. Ha a vendor repoban egy cucc egyik verzióját már senki sem használja, akkor nyugodtan törölheted onnan.

Amúgy is megéri az svn:exteranl-t használni ilyen esetekben, mert gyorsabb lesz az SVN kezelés.


Üdv,
Felhő
2

Oké!

kalamona · 2008. Júl. 11. (P), 18.47
Köszi szépen! Első blikkre tényleg ígéretes a terveimhez. Egyébként is SVN-ben gondolkodtam, viszont verziókezelőkkel nincs sok tapasztalatom. Átmazsolázom jobban, aztán lehet még előkerülök. :)