Introduzione a Git (sistema controllo versione)

Back to the future

Non sarebbe bello poter viaggiare nel tempo? Specie in caso di disastri?

I VCS (Version Control System) sono dei software che permettono di tenere traccia delle modifiche al codice sorgente. In un qualunque momento è possibile tornare ad una qualunque versione precedente, è possibile vedere le differenze che abbiamo introdotto, etc…in pratica ci permettono di lavorare in tutta tranquillità senza preoccuparci, sicuri d’avere sempre la possibilità di tornare ad uno stato precedente.

Distribuiti

I VCS di ultima generazione ormai sono addirittura indipendenti da un server centrale rendendoli di fatto strumenti che possono essere utilizzati a qualsiasi livello, anche in locale e per i nostri progetti personali di tutti i giorni.

La potenza dei DVCS è quella di essere indipendenti da un server/repository centrale. Immaginate d’avere un idea per il vostro software preferito, basterà clonare il repository e modificare il codice a vostro piacimento, quando avrete fatto potrete richiedere che le vostre modifiche vengano applicate al ramo principale di sviluppo, è questa una delle caratteristiche principali di Git (e dei DVCS in generale): indipendenza e libertà di movimento che permettono uno sviluppo altamente parallelo e non-linerare.

Imparare Git

Sono anni che sento parlare di Git e avevo sempre pensato che fosse uno strumento per guru e dalla curva d’apprendimento ripidissima, secondo me invece non è assolutamente così, anzi una volta che si cominciano a capire i meccanismi di base tutto sembra coerente e naturale.

Il materiale disponibile per Git è infinito ma se volete risparmiare tempo le letture che vi consiglio sono le seguenti:

  • The Git Parable – Un articolo che vi cercherà di far capire le basi di Git e come più o meno “ragiona”, senza sovraccaricarvi di dettagli sui comandi e la loro sintassi.
  • Git Reference – Questo è un vero è proprio capolavoro secondo me, una guida di base a Git, concisa, semplice, una volta letta Git non vi sembrerà più quel mostro incomprensibile che credevate.

Chiaramente queste sono solo letture introduttive e successivamente potreste voler approfondire alcuni aspetti di Git, niente paura esistono altre risorse come ad esempio Pro Git per questo.

L’ultimo miglio

Una cosa fantastica di Git non è tanto Git in se ma i vari servizi disponibili che permettono di ospitare i propri progetti/repository, e che creano vere e proprie community di sviluppatori.

Sto parlando di Gitorious e soci (inutile elencarli tutti, sul wiki di Git trovate una lista più o meno completa), non solo vi offrono la possibilità di ospitare i vostri progetti/repository ma hanno diverse caratteristiche che li rendono interessanti:

  • Interfaccia web per eseguire tutta una serie di operazioni in maniera molto semplice come visionare le modifiche apportate da un commit ad esempio
  • Creazione di copie personali di un qualsiasi repository per poter apportare le proprie modifiche
  • Merge-request, cioè richiedere che le modifiche apportate in un nostro repository vengano applicate al repository originario. La potenza di questo strumento sta nella semplicità con cui è possibilità contribuire ad un progetto senza per forza far parte del team di sviluppo.

Conclusioni

Git è uno strumento che in pochissimo tempo è riuscito ad ottenere un incredibile diffusione ed oggi è utilizzato da moltissimi progetti di software libero come il kernel Linux, KDE, GNOME, Android, FreeDesktop, Wine, GCC, Qt, VLC, etc, etc, etc…conoscere uno strumento così diffuso di certo non dispiace, specie se si ha intenzione di contribuire ad uno dei progetti che lo utilizzano.

Git resta comunque uno strumento utilissimo a prescindere che si voglia o meno contribuire ad un progetto altrui, inoltre una volta imparate le sue basi (cosa che richiede davvero poco tempo) lo amerete e lo troverete davvero naturale, piacevole e divertente da usare.

{lang: 'it'}


Puoi seguire le risposte a questo articolo tramite il feed RSS 2.0.
Puoi anche lasciare un commento, o creare un trackback dal tuo sito.

2 Risposte a “Introduzione a Git (sistema controllo versione)”



Lascia un commento

XHTML: Puoi usare questi tag: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

*