Automatikus kódkezelés a teszt és az élő weboldal között
Sziasztok,
Szeretnék kérni egy pár tanácsot és útbaigazítást az alábbi problémára:
Van egy élő weboldal és ennek egy másolata a localhoston. A fejlesztés offline
megy, majd tesztelés után felmásolom a modosított fájlokat a szerverre és
tesztelek újból mindent.
A probléma hogy szinte lehetetlen egy az egyben ugyanazt a környezetet kialakítani(php, mysql, apache beállítások, verzió eltérések)
az online és offline szerveren,ezért előfordulhat hogy ami működött localhoston az nem működok online. Ráadásul ugye az is megtörténhet hogy nem veszünk észre egy hibát, csak akkor amikor már élesben van a kód.
Ezért szeretnék létrehozni egy másolatát a weboldalnak az online szerveren, ami
tesztelésre használnék. A munkamenetet így képzeltem el:
1. fejlesztés es tesztelés localhoston
2. a modosított fájlokat felmásolnám az online teszt oldalra es jönne tesztelés újra
3. ha minden ok, akkor a modosított fájlok átkerülnének az élő oldalra
Az online szerver Linux, PHP, Mysql és Apache, a localhost Windows 7, Apache, Mysql és PHP.
Melyik forráskód kezelő rendszer lenne a legalkalmasabb erre a feladatra?
Rengeteg leírás és tutorial van a neten verziókezelő rendszerekről de mégsem sikerült
megtalálnom a helyes utat a problémám megoldása felé.
Bármilyen tanácsot nagyon szívesen fogadok.
■ Szeretnék kérni egy pár tanácsot és útbaigazítást az alábbi problémára:
Van egy élő weboldal és ennek egy másolata a localhoston. A fejlesztés offline
megy, majd tesztelés után felmásolom a modosított fájlokat a szerverre és
tesztelek újból mindent.
A probléma hogy szinte lehetetlen egy az egyben ugyanazt a környezetet kialakítani(php, mysql, apache beállítások, verzió eltérések)
az online és offline szerveren,ezért előfordulhat hogy ami működött localhoston az nem működok online. Ráadásul ugye az is megtörténhet hogy nem veszünk észre egy hibát, csak akkor amikor már élesben van a kód.
Ezért szeretnék létrehozni egy másolatát a weboldalnak az online szerveren, ami
tesztelésre használnék. A munkamenetet így képzeltem el:
1. fejlesztés es tesztelés localhoston
2. a modosított fájlokat felmásolnám az online teszt oldalra es jönne tesztelés újra
3. ha minden ok, akkor a modosított fájlok átkerülnének az élő oldalra
Az online szerver Linux, PHP, Mysql és Apache, a localhost Windows 7, Apache, Mysql és PHP.
Melyik forráskód kezelő rendszer lenne a legalkalmasabb erre a feladatra?
Rengeteg leírás és tutorial van a neten verziókezelő rendszerekről de mégsem sikerült
megtalálnom a helyes utat a problémám megoldása felé.
Bármilyen tanácsot nagyon szívesen fogadok.
Mi az, amihez eszközt keresel
rsync
ideális.Köszi, rsync-et megnézem. A
A kód módosítások nyilvántartására és a másoláshoz keresek egy eszközt.
A kódkezelést ugye megoldaná egy forráskód kezelo rendszer(svn), de hogyan tudnám ezt
összekombinálni a másolással, hogy ne kelljen kézzel átmásolni 25 fájlt a teszt szerverről az élesre, és probléma esetén egy kattintással visszaállítani a régi verzióra?
hogyan tudnám ezt
Egy verziókezelő ezt mind tudja, olvass utána a Gitnek.
Gondoltam hogy tudják ezt a
Köszi, bele fogok mélyedni a gitbe.
Most találtam ezt a
sikerült jobban megfogalmaznia :)
how-should-i-move-my-code-from-dev-to-production
A probléma hogy szinte
Nem szabad az újabb verziók featúráit használni addig, amíg a verzió ki nem forrta magát, és megjelenik beépítve a különböző linuxdisztribúciókba. Lehet, hogy roppant kényelmes az új PHP-ban tömböt JS-szerűen szögletes zárójelekkel létrehozni, de a rendszergazda mondhatja bármikor, hogy biztonsági okokból visszatértek a disztribúció által hivatalosan támogatott korábbi változathoz, amihez biztonsági javítások érkeznek folyamatosan, míg a legújabbhoz nem feltétlenül.
2, Az általad felsorolt szoftvereknek vannak korábbi verziói, így nem igazán nehéz összehozni Windowson is ugyanazt a környezetet, mint Linuxon. A webszervernél szerintem a verzió sem számít, az eddigi tapasztalataim szerint legalábbis az 1.3-as Apache pont ugyanolyan jól szolgál ki mindent, mint a 2.4-es.
Apache nem teljesen ugyan az azért
Config
Szerintem pp az 1.3-as és
Nem jogos
Köszi a részletes
Ezekre mindig torekszem, de sokszor viszont gányolt, régi, spagetti kódot kell
tovább fejleszteni vagy boviteni.
capistrano
http://www.capistranorb.com/
+1
Ami a hasonló környezet
Részemről gitet használok verziókezelésre (alkalmas arra is, hogy a dev és a staging szerver között mozgasd a kódot), éles szerverre rsync-el küldöm ki a módosításokat. Elvileg ezt is csinálhatnád persze gittel, pl.:
- A web-focused Git workflow
- git-deploy
- Using Git to manage a web site
A virtuális gép jó ötleg, meg
Köszi a linkeket, nagyon jók.
Vagrant
http://www.vagrantup.com/
http://vimeo.com/64392910
Köszi. Ez sokat segít, így el
dev - teszt - éles (néha ki
Verziókezelésre gitet használok, de a teszt rendszerről az élesre a fájlokat kézzel másolom át - minden változást felügyelni akarok. Ha automatikus deployt használnék, akkor is belépnék ftp-n, hogy lecsekkoljam, jó fájlok mentek-e ki :)
A rendszerek teljesen különbözőek, a dev ugye win7, néha frissítem a legújabb php-re, legújabb apache-ra, teljesen más elérési utak, stb.
A teszt rendszeren megpróbálom leszimulálni az éles környezetét, de nem töröm magam, csak annyira, hogy mondjuk a konfig fájl a legkisebb mértékben térjen el az élestől (de pl. felveszem a hosztingok sql szerverét a 127.0.0.1-re, symlinkek, ha nagyon kell). Próbáltam már szkanderozni egy-két szolgáltatóval, hogy a dev könyvtárstruktúrát tudjam élesben is használni, de általában falakba ütköztem, szóval ezek a keretrendszerben szabadon variálhatók.
Az éles rendszer meg teljesen heterogén, ahány projekt, annyi hoszting, mindegyik más környezetet biztosít.
A magam részéről szintén git.
Nagyon szépen köszönöm