GIT in pochi passi

26 aprile 2013

Git è un sistema di controllo di versione creato da Linus Torvalds che sta diventando rapidamente uno dei più diffusi in circolazione, anche grazie all’adozione sempre maggiore di piattaforme quali github e bitbucket. Molti team di sviluppo, infatti, lo stanno preferendo ad altri sistemi collaudati, come SVN e CVS, entrambi opensource.

Git vs CVS, SVN, etc

Uno dei principali problemi ai quali va incontro un utente che si avvicina a GIT è quello di paragonarlo ad altri repository come SVN o CSV. A differenza di questi altri sistemi di versioning, però, la filosofia di GIT è leggermente diversa, e prima di iniziare ad utilizzarlo è consigliato apprendere per bene i concetti alla base di questo sistema.

SVN e CVS sono sistemi di controllo di versione centralizzati (Centralized Version Control Systems, CVCS), mentre GIT è un sistema di controllo di versione distribuito (Distributed Version Control Systems o DVCS).

Dove è il server?

Un sistema di controllo di versione centralizzato predispone la presenza di un singolo server che gestisce tutte le versioni dei file. Ciascun utente controlla i file mediante il proprio terminale.

In un sistema di controllo di versione distribuito, invece, ciascun client fa anche da server per se stesso e possiede una copia locale del repository.

In questo articolo ci concentreremo prevalentemente sull’utilizzo “client” di GIT, che è quello certamente più utilizzato al momento, anche grazie ad alcune piattaforme online già citate. Nulla vieta di installare il software su una propria macchina, ad esempio seguendo questo ottimo tutorial.

Come vengono memorizzati i dati?

SVN e CVS salvano l’informazione come una lista di cambiamenti apportati ai file e memorizzano le informazioni che essi mantengono come un insieme di file e le modifiche apportate su ciascuno di essi.

GIT, invece, considera i propri dati come una serie di istantanee (snapshot) di un mini filesystem. Ogni volta che l’utente effettua un commit, o salva lo stato del proprio progetto, fondamentalmente fa un’immagine di tutti i file presenti in quel momento, salvando un riferimento allo snapshot. Se alcuni file non sono stati modificati, GIT non li clona ma crea un collegamento agli stessi file della versione precedente.

lavorare offline

Altro aspetto molto interessante di GIT rispetto ai repository centralizzati, è la possibilità di lavorare anche in assenza di connettività con il server centrale. L’utente può lavorare sulla propria copia locale del repository e rendere pubbliche le modifiche quando il server ritorna disponibile.

GUI per Git

Quando GIT è installato sul sistema, è possibile effettuare tutte le operazioni da riga di comando, ma naturalmente sono disponibili numerosi client GUI free che è possibile utilizzare in base al sistema operativo.

Windows

MAC

Linux

Se vuoi aggiornamenti su GIT in pochi passi inserisci la tua e-mail nel box qui sotto:
 
X
Se vuoi aggiornamenti su GIT in pochi passi

inserisci la tua e-mail nel box qui sotto:

Ho letto e acconsento l'informativa sulla privacy

Acconsento al trattamento di cui al punto 3 dell'informativa sulla privacy