Buna.

Da' colegii respectivi nu stiu sa-si faca un branch local pe care sa
ruleze testcase-urile dupa fiecare editare minora si la puncte
importante (sau seara) sa-i faca merge in trunk (sau whatever) sa-l ia
CI-ul la puricat?

Daca abia e in stare sa macine masina pe care ruleaza CC compilarea si testele, crezi ca statiile de lucru fac treaba asta din incheietura mainii?

In plus, problemele unde e util CI nu sunt doar alea de face unu' commit cu cod bulit. De ex. daca folosesti biblioteci de pe web, poti sa-l pui una-ntr-una (ma rog, periodic, cu periodicitate mai mare sau mai mica) pe CC sa-si aduca surse proaspete, si sa te traga de maneca cand a rupt careva care habar n-are ca existi compatibilitatea. Sau doi indivizi fac separat checkout/update, fiecare modifica altceva, ce au ei local se compileaza, da' cand fac comit (cam in acelasi timp, sa zicem seara inainte sa plece), modificarile puse la un loc nu mai compileaza. Sau ai proiecte care-s module ale unui produs mamuto-monstruos, si tu ai acces si habar doar de unele module, da' commit-ui cod care se foloseste si in altele - n-are cine te trage de maneca decat CC. Sau faci commit la surse care merg brici cu proiectul la care se lucreaza, da' sunt folosite si crapa build-ul la un proiect ce nu l-a mai atins nimeni de un an, dar care trebuie sa ramana compilabil si functional cu aceleasi surse.

Daca e Java, nu ma astept sa fie probleme de compilare locala - majoritatea celor ce scriu cod Java au compilarea pusa pe automat, adica IDE-ul recompileaza local dupa fiecare salvare de fisier. Problemele pe care tre' sa le rezolve CC sunt tocmai alea de integrare intre mai multi programatori. Rezolvarea manuala presupune update foarte frecvent local, ceea ce mai ales cand depanezi cate o chestie grea e extrem de contraproductiv. In echipe mai mari de zece oameni, care eventual au milioane sau macar sute de mii bune de linii de cod in intretinere as zice ca e chiar irealizabil.

Si btw, cand depanezi o chestie care iti scoate peri albi, si sta clientul calare pe tine ca-ti da specificatia maine dar ii trebuia produsul ieri, si mai ai si colegi care lucreaza in acelasi regim si rup compatibilitatea cu codul tau la fiecare sfert de ora, si-ti zice careva sa nu care cumva sa faci comit pana n-ai rulat toate testele posibile si imposibile, in loc sa le lasi in carca CI-ului, ai o tentatie cumplita sa-i corectezi deviatia de sept nazal, sau daca n-are, sa-i procuri tu una. Eventual cu ranga.

Stima,

--
Florin Jurcovici
------------------
The Net interprets censorship as damage and routes around it. (John Gilmore - one of the EFF founders)

_______________________________________________
RLUG mailing list
[email protected]
http://lists.lug.ro/mailman/listinfo/rlug

Raspunde prin e-mail lui