Home
Tanti auguri Git

07 Aprile 2015

Tanti auguri Git

di

Dalla sfida di Linus Torvalds verso i "pazzi hacker" a GitHub, tutte le tappe di un decennio che ha cambiato il versionamento.

Marc Bloch sosteneva che la storia è la scienza degli uomini nel tempo, la chiave di lettura per comprendere il presente mediante il passato. Una chiave che possiamo usare per capire l’enorme successo di Git, il sistema di versionamento del codice che nel corso degli ultimi dieci anni ha sbaragliato i concorrenti ed è assurto a standard de facto.

Github, il più popolare sito di gestione di repository Git, è diventato la sua naturale estensione sul web, contribuendo a socializzare l’esperienza di condivisione del codice sorgente. Ma facciamo un passo indietro. Scrive Linus Torvalds il 7 aprile del 2005:

Una sfida veloce per voi e per gli hacker pazzi che stanno là fuori: se volete giocare con qualcosa di _veramente_ cattivo (ma anche molto _molto_ veloce), date un’occhiata a kernel.org:/pub/linux/kernel/people/torvalds/. Il primo a spedirmi l’albero delle modifiche di sparse-git (e uno strumento per eseguire commit e push/pull di ulteriori cambiamenti) si merita una stella d’oro e una menzione d’onore.

E poi continua:

Non è un SCM [Source Control Management], è un meccanismo di distribuzione e archiviazione. Però scommetto che ci si potrebbe costruire sopra un SCM ragionevole.

Questo messaggio sulla mailing list del kernel di Linux descrive il primissimo embrione di Git, invitando i crazy hacker a dare una prima occhiata al codice e a provare a contribuire creando i primi tool di contorno (i cosiddetti porcelain tools). In queste parole c’è tutto lo spirito dello sviluppo open source e si intravedono alcuni dei semi che germoglieranno negli anni successivi.

A tre giorni di distanza da questo primo messaggio Torvalds eseguirà il primo commit del codice di Git su Git stesso rendendolo di fatto self-hosting e la comunità di sviluppo Linux da lì a poche settimane inizierà a utilizzarlo come strumento principale per il versionamento del codice del kernel. Da quel momento la sua popolarità è andata via via aumentando e Git è oramai imprescindibile per qualunque sviluppatore.

Ma come mai tanto consenso verso uno strumento software che per molto tempo è stato considerato ostico da comprendere e da usare?

Uno dei mantra nello sviluppo software è eat your own dog food (mangia il tuo cibo per cani), ovvero: devi essere il primo utilizzatore del tuo software. Questo è sicuramente uno dei motivi del successo di Git, che da subito è stato buttato nella mischia come rimpiazzo del precedente strumento di versionamento di Linux, ricevendo una incredibile quantità di feedback e di contributi al suo miglioramento. L’argomentazione if it’s good enough for the Linux kernel, it’s good enough for you (se va bene per il kernel di Linux, va bene anche per te) è stata inoltre sufficiente per convincere molti dei più restii a dargli una possibilità. Possiamo anche ascoltare Linus stesso parlare della sua creatura.

Il grande balzo in avanti

Git ha comunque conquistato la popolarità nel 2010 con l’affermazione di GitHub, il sito di social coding che ha contribuito a semplificare l’utilizzo di Git abbassandone significativamente la curva di apprendimento e portando a bordo nel tempo tutti i principali progetti open source, che in GitHub hanno trovato la spinta per migrare dai precedenti strumenti.

Github è quindi diventato il primo posto dove cercare software open source, commentare il codice sorgente e tenere traccia delle iniziative più interessanti. È il posto dove i recruiter vanno a caccia di talenti e gli sviluppatori fanno mostra delle loro competenze.

In poto tempo Github si è letteralmente mangiato prima SourceForge (ancora attivo ma oramai di scarsa importanza), Freecode (in stasi da giugno) e poi Google Code. In un recente post Chris DiBona, Director of Open Source di Google, ne ha infatti annunciato la chiusura, con la conseguente migrazione su Github dei progetti OSS (Open Source Software) dell’azienda di Mountain View. Non stupirebbe la dismissione di CodePlex, visto che non riceve aggiornamenti significativi da lungo tempo e i più importanti progetti OSS di Microsoft sono migrati su Github.

La versatilità e la potenza di Git hanno così conquistato gli utenti più esigenti, mentre GitHub è stato la chiave per raggiungere i meno esperti. Domani a Parigi si svolgerà Git Merge, dove gli speaker delle aziende tecnologiche più importanti del momento racconteranno della loro esperienza con Git e celebreranno i suoi dieci anni con interventi molto interessanti. Se siete da quelle parti e riuscite a partecipare, fate gli auguri a Git da parte di Apogeonline. Se come me non sarete della partita c’è sempre Twitter: l’hashtag è #gitmerge.

Vale la pena infine di segnalare l’intervista a Linus Torvalds apparsa ieri su Linux.com e la suggestiva timeline di Atlassian sull’evoluzione di Git in questi dieci anni.

L'autore

  • Andrea C. Granata
    Andrea C. Granata vanta oltre 25 anni di esperienza nel mondo dello sviluppo software. Ha fondato la sua prima startup nel 1996 e nel corso degli anni si è specializzato in soluzioni per l'editoria e il settore bancario. Nel 2015 è entrato a far parte di Banca Mediolanum come Head of DevOps, ruolo che oggi ricopre per LuminorGroup.

Iscriviti alla newsletter

Novità, promozioni e approfondimenti per imparare sempre qualcosa di nuovo

Gli argomenti che mi interessano:
Iscrivendomi dichiaro di aver preso visione dell’Informativa fornita ai sensi dell'art. 13 e 14 del Regolamento Europeo EU 679/2016.