Bazaar-NG: Hajautettua versionhallintaa

Heinäkuu 14th, 2006

Törmäsin tuossa joku aika sitten Mark Shuttleworthin blogissa Bazaar-NG-nimiseen versionhallintaohjelmistoon. Erikoista kyllä, sillä ei nimestään huolimatta ole juurikaan mitään tekemistä toisen, jo aiemmin olemassaolleen Bazaar-versionhallintaohjelmiston kanssa.

Mikä Bazaar-NG:stä (tästä lähtien ‘BZR’) sitten tekee mielenkiintoisen?

  • No, se on yksinkertainen ja nopea. Siitä on aina hyvä lähteä, koska vaikeaselkoisia, sekavia ja muuten vain mammuttimaisia ohjelmistoja on jo aivan liikaa.
  • BZR on myöskin hajautettu, mikä erottaa sen esimerkiksi CVS:stä ja Subversionista. Hajautus on äärettömän tärkeä asia siinä vaiheessa, kun halutaan vaikkapa pitää varmuuskopiota versionhallinnasta, ylläpitää useampaa räätälöityä versiota ohjelmistosta tai jos esimerkiksi ollaan tekemässä maantieteellisesti hajautettua projektia.
  • BZR on avointa lähdekoodia, kenen tahansa vapaasti käytettävissä.
  • BZR:ään on myös toimiva Windows-clientti, mitä ei voi sanoa kaikista avoimen lähdekoodin projekteista.
  • BZR:n taustalta löytyy maailman suosituinta Linux-distribuutiota (Ubuntua) kehittävä ja ylläpitävä yritys, joten sen elinkaari ei ole aivan niin arvailujen varassa kuin joidenkin toisten.

Kannattaa kyllä ehdottomasti kokeilla.

Alkuun pääsee lataamalla asennuspaketin BZR:n sivuilta:
http://bazaar-vcs.org/OfficialDownloads

Ja lukemalla seuraavan tutoriaalin:
http://bazaar-vcs.org/IntroductionToBzr

Käytännössä asennuksen jälkeen avaat vain hakemiston, jonka haluat versioida ja kirjoitat:

% bzr init
% bzr add
% bzr commit -m "Tiedostot versioitu."

Ja tsadaa! Hakemistosi kaikki tiedostot ovat nyt versioituvia. :-)

Sitten vaan kokeilemaan seuraavia:

% bzr status
[ahkeraa tiedostojen muokkausta...]
% bzr diff
% bzr commit -m "Selostus, mitä muutettiin."
% bzr log

CVS:ää ja Subversionia vastaavat komennot keskitettyyn branchiin ovat seuraavat: checkout, update ja commit. Hajautus taas tapahtuu komennoilla: pull, merge ja push.

Mutta tosiaan, en nyt tässä rupea noita komentoja selostamaan. Kokeilkaa itse!

Artikkeli on luettu 440 kertaa. Kuuluu luokkiin: Ohjelmointi, Menetelmät, Versionhallinta, Bazaar

3 Kommenttia Lisää kommentti

  • 1. Artti Jaakkola  |  Heinäkuu 14th, 2006 at 20.43

    Tutkiskelin hieman lisää ja löysin lähes täysin BZR:ää vastaavan projektin, joka tarjoaa BZR:n ominaisuuksien lisäksi vielä binäärideltat ja hakemistotasoiset branchit:

    Mercurial:
    http://www.selenic.com/mercurial/

    Ainoa löytämäni heikkous suhteessa BZR:ään oli puuttuva rename-versiointi. Tosin se on kyllä aika iso puute. Lisäksi Mercurial ei käsittele tyhjiä hakemistoja. Kummallista…

    Projektien kehittäjät ovat näköjään juuri tavanneet Lontoossa, joten jonkin tasoista yhteistyötä on ilmeisesti odotettavissa.

    Pitänee testata tuokin. :-)

  • 2. Juha Komulainen  |  Heinäkuu 25th, 2006 at 12.33

    Itse olen käyttänyt viime aikoina Darcsia, eikä siitä kyllä ole juuri valittamista. Darcs tuntuu vielä käytettävämmältä kuin kilpailijansa ja osaa mergetä muutokset hieman älykkäämmin. Kannattaa tutustua.

    Ja tietysti se, että Darcs on kirjoitettu Haskellilla on vain plussaa. :)

  • 3. Artti Jaakkola  |  Heinäkuu 26th, 2006 at 2.08

    Terve!

    Aika sattuma: Kävin nimittäin juuri toissapäivänä taas pitkästä aikaa teikäläisen blogia vilkuilemassa. :-)

    Olen pari kertaa koettanut päästä kiinni tuohon Haskelliin, mutta sen syntaksi on turhan hankala. Treenaamalla varmaan selkenisi, mutta kun kieli on täynnä kaikenmaailman zippejä, taileja, monadeja, yms, niin tulee melkein Rubyä ikävä.

    Mielestäni ohjelmointikielen tulisi olla mahdollisimman lähellä luonnollista kieltä - ihmisten luettavaksihan se koodi on kirjoitettu. Tuossa mielessä monet imperatiivisista kielistä ovat lompsineet ihan oikeaan suuntaan.

    Täytyy testata tuo Darcsikin. Kiitoksia vihjeestä. Tuo mainitsemani Mercurial oli tosiaan nopeampi kuin BZR. Siltikin Bazaarista jäi jotenkin viimeistellympi kuva.

Jätä kommentti

(ei näy sivuilla)

(kirjoita kuvassa näkyvät merkit, pakollinen)

Sallitut HTML-elementit:
<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <code> <em> <i> <strike> <strong>

Trackback this post  |  Subscribe to the comments via RSS Feed


Kalenteri

Heinäkuu 2006
M T K T P L S
« Kes   Elo »
 12
3456789
10111213141516
17181920212223
24252627282930
31  

Uusimmat kirjoitukset

Sivusto

Smooth seas do not make skillful sailors.
- Henry Ford