Pozdrav,
vjerojatno su se svi koji se bave PLSQL razvojem susreli s problemom source controla u bazi podataka. U nekim firmama se source control uopće ne koristi pa si developeri redovito međusobno gaze verzije. Gubi se vrijeme na ručno uspoređivanje paketa (KDiff, WinMerge) itd.
Mene zanima na koji način vi koristite u svojim firmama source control, koji alat.
Čitao sam malo o produktu firme Red Gate (link). Ima li itko iskustva s tim komadom softvera? Uočene prednosti/mane?
Trenutno u firmi u kojoj radim koriste TortoiseSVN.
Ima svojih prednost i mana.
Ovakav im je modus operandi.
Najprije developer A koji radi na paketu X zaključa taj paket na svim okolinama (3 razvojne okoline dev, test, prod).
(mana: ako developer B drži lock, developer A mora ili čekati da dev B završi ili dogovoriti se na prepuštanje locka itd. Nema branchanja - postoji mogućnost naravno, ali je ne koriste).
Nakon locka, developer A može početi razvijati. Očekivano mjesto gdje developer razvija je IDE (SQL Developer ili PLSQL Developer). Nakon toga developer treba iskopirati svoje promjene u source control file (zapravo u tekstualnu datoteku). Nema direktno iz baze u source control. Napomena. Developer nema svoju razvojnu okolinu, nego je sve shared.
Tu fali ta dev okolina koju bi trebao svaki developer imati. Ali onda dolazimo do problema s podatcima i syncanjem istih (potrebno je imati podatke za kvalitetan tuning i optimizaciju).
I sve to ponoviti za svaku od 3 okoline.
Nakon što razvoj ode na produkciju, developer miče lock s paketa i onda može netko drugi raditi razvoj.
S grananjem i merganjem se omogućava da može više developer radit na istom paketu, ali zasad im je način rada ovakav.
Na "mojoj" bazi radi otprilike 50 developera.
Verzioniraju i fmb i xls datoteke.
Ima li boljih rješenja od ovog?
Hvala unaprijed na svim komentarima :)