| viric ( @ 2005-10-14 20:29:00 |
| Current music: | Neniu! Mi ĵus rimarkis. |
| Entry tags: | ca, eo, programes |
Kion mi lernis pri versikontroliloj
Antaŭ pluraj jaroj mi uzis CVS por versikontroli miajn programojn... Mi havis la staplon en servila komputilo (tiu jam konata vicerveza.homeunix.net). Tio bonis, ĉar rete mi povis same atingi la staplon kiel en mia lokala reto kun la servilo. Poste mi uzis Subversion - verdire, ĝi estas tute simila. Aldone eblas versikontroli dosierujojn, ŝanĝi nomojn de dosieroj... sed malmulton pli.
Post uzi Darcs, mi konsciiĝis pri problemo mia je uzo de tiuj programoj... mi neniam uzis la eblecon krei branĉojn. Mi estis la nura uzanto de tiu kodo, kaj la nura programisto, kaj mi ĉiam laboris ŝanĝanta nuran branĉon, la ĉefan branĉon de miaj programoj. Nun mi lernis ke bonas krei branĉojn por ĉiu nova ideo aldoninda, kaj poste kunigi la novan branĉon (kun siaj ŝanĝoj finfaritaj) al la ĉefa branĉo.
Kiam mi aŭdis antaŭe pri branĉoj, kunigo de ili, ktp, mi ĉiam timis, ĉar ja eblas ke estu konfliktoj se en diversaj branĉoj estas ŝanĝoj al la sama loko de dosieroj, ktp. Do, kvazaŭ tiuj kunigoj estas danĝerecaj. Certe tio okazas se estas malbona kunordigado inter diversaj programistoj, ktp. Tamen mi ĵus komprenis kiom ili bonas, kiom bonas uzi tiajn branĉoeblecojn.
Do, mi rekomendas al ĉiuj uzi versikontrolilajn branĉojn ;)
Aldone mi lernis en la laborejo uzi novan versikontrolilon: ClearCase. Ni uzas tie tre malnovan version... sed vere ĝi estas bone pensita por tio ke pluraj homoj tuŝu la saman arbon da kodo. Tiusence ŝajne pli bonas alternativoj kiel GNU Arch, jam menciita antaŭ ne longe en tiu ĉi mia taglibro - tie estas sufiĉe strikta kontrolo pri la uzantoj. Bele bele, ĉio bele!
Tiu Darcs estas bona rimedo por la pigruloj, por tiuj kazoj en kiuj oni pigrus uzi versikontrolilon ;). Sed nepras ke estu tiuj aliaj kontroliloj - ja 'darcs' ne bonas por ĉio, laŭ mia duma opinio. :)
Fa molts anys feia servir CVS per a controlar versions de fitxers en els meus programes... Tenia el repositori al servidor (al ja conegut vicerveza.homeunix.net). Això anava bé, perquè per internet podia accedir al repositori igualment com en la meva xarxa local on hi ha el servidor. Llavors vaig fer servir Subversion - en realitat, s'assembla molt al CVS. Permet a més controlar versions de directoris, canviar el nom de fitxers... però poca cosa més.
Després de fer servir Darcs, vaig adonar-me del problema que tenia amb l'ús d'aquest tipus de programes... mai havia fet servir la possibilitat de crear branques. Jo era l'únic usuari del codi, i l'únic programador, i sempre havia treballat canviant numés una branca, la branca principal dels meus programes. Ara he après que va molt bé crear branques per cada nova idea a implementar, per llavors ajuntar la nova branca (amb els seus canvis acabats) a la branca principal.
Abans quan sentia a parlar de branques, la seva unió (o fusió, merge), etc., sempre li tenia por a tot això, ja que és possible que hi hagi conflictes si en les diverses branques hi ha canvis en el mateix lloc dels mateixos fitxers, etc.. Així doncs, per mi aquestes unions eren com perilloses. És clar que això passa si hi ha una mala coordinació entre els diversos programadors, etc. Però fa poc he entès com n'és de bo utilitzar les possibilitats relacionades amb les branques.
Així doncs, recomano a tothom que faci servir branques ;)
A més he après a la feina a fer servir un nou programa de control de versions: ClearCase. Hi fem servir una versió molt vella... però realment està ben pensada per a les situacions en què varies persones toquen el mateix arbre de codi. En aquest sentit segurament són millor alternatives com GNU Arch, del que ja n'he parlat no fa gaire en aquest diari -- allà hi ha un control força estricte dels usuaris. Maco maco, tot ben maco!
I el Darcs és una bona solució per als mandrosos, per aquells casos en els que fa mandra fer servir un control de versions ;). Però és imprescindible que hi hagi també els altres controladors -- és clar que el 'darcs' no és bo per a tot, segons la meva opinió (actual). :)