Screencast e bonjour, tutto in salsa git

Sempre per restare sul tema git dell’ultimo post, scopro due interessanti servizi tramite le pagine del blog di Mikael Hallendal.

Il primo fa molto web2.0, anche se l’accostamento dei termini screencast e git parrebbe alquanto stridente. In realtà su GitCasts risultano esserci brevi video-tutorial molto gradevoli sugli usi più comuni di git. Il servizio sembra essere partito da poco, i video sono disponibili nell’onnipresente stream .flv oppure scaricabili come .mov (il mio occhio non allenato al riconoscimento dell GUI sembrerebbe suggerirmi che l’autore stia usando git su un MacOSX, probabilmente tramite i ports).

La seconda è invece una chicca in Ruby ancora in sviluppo, chiamata GitJour. Come il nome potrebbe suggerirvi, è un interessante accoppiamento tra Git e Bonjour, che si occupa di fare il discovery di servizi di git repository sulla vostra LAN (nell’incrocio con l’immancabile zona .local) e facilita la clonazione di repository offerti in questa maniera.

Hosting git gratuito: github

Personalmente mi trovo molto bene con git, che è ormai diventato il mio DVCS di fiducia. Con buona imparzialità, posso dire che è certamente il più veloce e leggero tra quelli che ho usato finora, nonchè probabilmente il più comodo. A volte però può risultare difficile trovare hosting git per i propri progetti, poichè essendo un sistema relativamente giovane non è ancora ufficialmente offerto dai più comuni siti di hosting (nè SourcerforgeBerlios lo offrono, giusto per fare due nomi eccellenti). I progetti più grossi come kernel.org, freedesktop.org e Debian offrono i propri servizi per l’hosting di repository, ma capisco perfettamente che per progetti piccoli, di prova e non in argomento, questa non è una strada percorribile.

Penso quindi che possa essere utile segnalare github.com: una semplice piattaforma di hosting di repository, con un’offerta completamente basata su git. L’accesso tramite SSH e gli hook personalizzabili ne fanno un’interessante alternativa ai nomi più blasonati, mentre l’interfaccia web è assai gradevole (e parecchio web2.0 per chi proprio non può farne a meno :) ). Molti progetti famosi di software libero ne fanno uso, e probabilmente potrebbe essere una buona scelta anche per i vostri (più o meno sconosciuti, che siano)!

Git repository with Apache (via WebDAV) and gitweb

I’ve just finished setting up my semi-personal git repository. I was forced to use apache authentication on https (instead of the usual git-daemon or a more canonical ssh authentication) as my hostel/university firewall is particularly fascist. I choose gitweb as web interface, because it seems to be the most widespread and I’m quite comfortable with it (and is available in Debian Etch ;) ).

Logo git

As a starting point, I used the official Howto to understand how this is expected to work, and a quick readme for gitweb. I won’t go into details about gitweb configuration, as it’s extensively explained somewhere else.

First of all, the usual Vhost, Root and SSL lines:

<VirtualHost *:443>
ServerAdmin hostmaster@example.com
ServerName git.example.com
SSLEngine On
SSLCertificateKeyFile /etc/ssl/your_domain.key
SSLCertificateFile /etc/ssl/your_domain.crt
DocumentRoot /var/www/git

Then the gitweb relevant part:

Options Indexes FollowSymlinks ExecCGI
DirectoryIndex index
Alias /gitweb.css /var/www/gitweb.css
Alias /git-logo.png /var/www/git-logo.png
Alias /git-favicon.png /var/www/git-favicon.png
ScriptAlias /index /usr/lib/cgi-bin/gitweb.cgi

All those Aliases are just because I didn’t copy those file in proper directories, but instead I used directly the one provided by packages. index here is used only as placeholder for the gitweb index script.
Then the real repository part, managed with DAV:

<Location /my_repo.git>
Dav on
AuthType Basic
AuthName "My repo with git"
AuthUserFile /etc/apache2/git_repo.passwd
<Limitexcept GET HEAD PROPFIND OPTIONS REPORT>
Require valid-user
</Limitexcept>
</Location>

This way, everybody can git-clone my repository (yes, it mainly contains free-software stuff :) ), but pushing is only available to those authenticated (via the usual BasicAuth mechanism and ~/.netrc credentials).

i|có|na – immagine sacra dipinta su legno

Riprendendo un post di qualche tempo fa, sembra che il buon Andreas abbia finalmente messo mano al mio abbozzo di icona.
Ora le scelte restano da fare tra le due proposte finali:

cherry.jpg                                  mine.jpg

Al solito, agli sviluppatori di giggle l’ardua sentenza.

Iscriviti

Ricevi al tuo indirizzo email tutti i nuovi post del sito.