29 giugno 2011
Launchpad
Con CVS (Concurrent Versions System) ormai dato per defunto, e’ aperta nel mondo dell’informatica la lotta per la sua successione. Tra i diversi sistemi proposti negli ultimi anni, particolare successo e’ stato ottenuto da Apache Subversion (SVN per gli amici). Neanche quest’ultimo sembra esseri pero’ un sistema esente da pecche, tanto che ulteriori alternative si sono affacciate da qualche tempo sulla scena. Di notevole rilevanza mercurial, git e Bazaar. Proprio quest’ultimo e’ stato oggetto di un po’ di sperimentazioni da parte del sottoscritto che si sono protratte per un’oretta questo pomeriggio. Sperimentazioni che sono passate attraverso Launchpad, una software collaboration platform che permette di ospitare al suo interno archivi di codice sorgente di applicazioni open source.

Una volta attivato il proprio account sul sito di Launchpad e’ possibile sia creare un progetto vero e proprio, sia limitarsi a creare più’ semplici branch (in gergo “junk”, ossia spazzatura). Il che e’ un’ottima soluzione per chi, come il qui presente, non ha ambizioni particolari se non quelle di utilizzare Launchpad come un repository un po’ evoluto. A tal fine ho riassunto qui di seguito i comandi principali sufficienti per garantire un’efficiente interazione con Launchpad via Bazaar (per quanto riguarda l’installazione delle utility di Bazaar in ambiente Linux, tutte le istruzioni sono contenute in questa pagina).
Dando per scontato che sulla macchina che stiamo utilizzando abbiamo un progetto con una sua directory root, per inizializzare una branch locale non occorre far altro che spostarsi all’interno di questa cartella ed impartire i due comandi che seguono:
$bzr init
$bzr add
A questo punto e’ possibile uploadare il tutto all’interno dei repository di Launchpad, specificando il nostro nome utente ed il nome che vogliamo dare alla branch. Per fare tutto cio’ serve un solo comando:
$bzr push lp:~/userName/+junk/branchName
Ora, nel caso in cui continuassimo a lavorare sul nostro progetto apportandovi delle modifiche, per aggiornare il contenuto del repository e’ necessario effettuare un commit tramite le istruzioni:
$bzr commit
$bzr push
Da notare che nella seconda istruzione non abbiamo più specificato il percorso remoto, dato che Bazaar dovrebbe averlo tenuto in memoria.
Per recuperare dal repository l’ultima versione (revision) del proprio software, occorre creare una directory locale apposita, spostarvisi al suo interno, inizializzarla per ospitare una determinata branch e poi procedere a copiarvi quanto contenuto sul repository on line.
$bzr branch lp:~/userName/+junk/branchName
$bzr pull o $bzr update
Nel caso in cui il computer che si utilizzasse non dovesse essere lo stesso con il quale la branch e’ stata originariamente creata ed uploadata su Launchpad, l’opzione “whoami” puo’ essere utilizzata per identificarsi:
$bzr whoami userName
Launchpad utilizza per l’autenticazione un ottimo sistema di sicurezza basato su SSH. In caso di eventuali problemi con l’impostazione delle chiavi, a questa pagina e’ spiegata molto bene la procedura da seguire.
Direi che questo e’ quanto. Ora non si tratta che di valutare nel tempo la robustezza e la praticità’ di questo sistema. Nel frattempo, buon coding (sicuro e condiviso) a tutti.



