Git è uno strumento gratuito e open source che è principalmente un sistema di controllo versione distribuito. Git è un software di controllo versione che ti aiuta a gestire le diverse versioni di qualcosa, ad esempio del codice sorgente. Esistono molti software di controllo versione come Subversion, Bazaar, ecc. Git, però, è il più popolare e il più utilizzato per tracciare le diverse versioni del codice.
Il motivo principale per usare un sistema di controllo versione è che ti permette di tracciare versioni diverse e dettagliate del progetto. Aiuta anche a mantenere la collaborazione con il team. Diventa risolutivo soprattutto quando più persone lavorano allo stesso progetto sullo stesso problema: è lì che entra in gioco il controllo versione. Ti aiuterà a sapere "chi ha fatto la modifica", "perché qualcuno ha fatto quella modifica", "quando è stata fatta quella modifica", ecc.
Ci sono molti IDE disponibili per Python e puoi anche integrare Git nel tuo progetto. Quando scegli un IDE, puoi consultare questo tutorial, Top 5 Python IDEs for Data Science. Per una configurazione completa, c’è anche un breve tutorial su Datacamp Top 5 IDES.
Per scaricare Git su Windows:
- Vai al sito di Git Git Download
- Scarica il software in base alla versione di Windows.
- Installa Git selezionando tutte le opzioni predefinite e consigliate.
Una volta fatte tutte le operazioni sopra, puoi eseguire git dalla riga di comando. Verranno quindi visualizzate diverse informazioni, incluse le modalità d’uso e i comandi Git comuni per le varie situazioni.
In Git esistono diversi livelli di configurazione. La configurazione può avvenire su tre livelli diversi. Sono:
- Sistema
- Globale
- Repository
Si considera che esista una gerarchia tra questi tre livelli. Il livello più alto è Sistema. Globale è il secondo più alto e Repository è il livello più basso tra tutti. Inoltre, i parametri possono essere impostati su più livelli e, se lo stesso parametro, per esempio user.email, è impostato a livello di Repository, nasconderà quello specificato a livello Globale. Se lo stesso parametro è impostato a livello Globale, nasconderà quello specificato a livello di Sistema.
Git ha un comando chiamato config che può accettare il parametro e anche un argomento per specificare a quale livello di configurazione applicarlo.
-
Livello di sistema (--system) Il livello di sistema copre l’intero utente, l’intera macchina e tutti i repository. Su Windows, il file di configurazione si trova in
C:\Documents\Git\etc\gitconfig. Modificando a questo livello, le modifiche si riflettono ovunque, cioè ogni repository può essere interessato. Per questo motivo, modificare la configurazione a livello di sistema è spesso sconsigliato. -
Livello globale (--global) La configurazione a livello globale incide a livello utente. In particolare, il nome utente si applica all’utente del sistema operativo. Su Windows è archiviata in
C:\Users\<UserName>\.gitconfig. -
Livello repository (--local)
Il livello repository è specifico per il singolo repository. Ad esempio, se hai clonato un progetto da GitHub, per impostazione predefinita git config scriverà a livello locale quando non viene passato alcun livello di configurazione. Esiste anche un file di configurazione nella sottocartella del repository .git. In Windows, si trova in C:\<RepoFolder>\.git\config.
Configurazione di base
Puoi eseguire tutti i passaggi seguenti dalla riga di comando per ottenere un’esperienza migliore.
Puoi anche verificare la versione di Git
git --version
Puoi configurare Git con il tuo nome
git config --global user.name "<Your-Full-Name>"
Puoi configurare Git con la tua email
git config --global user.email "<your-email-address>"
Puoi assicurarti che l’output di Git sia colorato
git config --global color.ui auto
Puoi visualizzare lo stato originale in caso di conflitto
git config --global merge.conflictstyle diff3
Puoi vedere le configurazioni correnti
git config --list
Per maggiori informazioni, visita questo sito: Git Configuration.
Git con un editor di codice
Puoi usare Git con gli editor (IDE) che preferisci. Ci sono molti editor di codice popolari. Puoi usare editor diversi in base alle tue preferenze e, per farlo, puoi cercare su Google come procedere.
Configurazione di Sublime Text:
git config --global core.editor "'C:/Program Files/Sublime Text 2/sublime_text.exe' -n -w"
Configurazione di VSCode:
git config --global core.editor "code --wait"
Configurazione di Atom:
git config --global core.editor "atom --wait"
Per scaricare Git su Mac/Linux:
- Vai al sito di Git Git Download
- Scarica il software in base alla versione di Mac/Linux.
- Installa Git selezionando tutte le opzioni predefinite e consigliate.
Una volta fatte tutte le operazioni sopra, puoi eseguire git dal terminale. Verranno quindi visualizzate diverse informazioni, incluse le modalità d’uso e i comandi Git comuni per le varie situazioni.
In Git esistono diversi livelli di configurazione. La configurazione può avvenire su tre livelli diversi. Sono:
- Sistema
- Globale
- Repository
Si considera che esista una gerarchia tra questi tre livelli. Il livello più alto è Sistema, Globale è il secondo più alto e Repository è il livello più basso tra tutti. Inoltre, i parametri possono essere impostati su più livelli e, se lo stesso parametro, per esempio user.email, è impostato a livello di Repository, nasconderà quello specificato a livello Globale; se lo stesso parametro è impostato a livello Globale, nasconderà quello specificato a livello di Sistema.
Git ha un comando chiamato config che può accettare il parametro e anche un argomento per specificare a quale livello di configurazione applicarlo.
-
Livello di sistema (--system) Il livello di sistema copre l’intero utente, l’intera macchina e tutti i repository. Su Linux, il file di configurazione si trova in
/etc/gitconfig. Su macOS, c’è un file in/usr/local/git/etc/gitconfig. Modificando a questo livello, le modifiche si riflettono ovunque, cioè ogni repository può essere interessato. Per questo motivo, modificare la configurazione a livello di sistema è spesso sconsigliato. Inoltre, richiede privilegi amministrativi, cioè l’utente root sia su macOS sia su Linux. -
Livello globale (--global) La configurazione a livello globale incide a livello utente. In particolare, il nome utente si applica all’utente del sistema operativo. Sia su Linux che su macOS è archiviata in
~/.gitconfig. -
Livello repository (--local)
Il livello repository è specifico per il singolo repository. Ad esempio, se hai clonato un progetto da GitHub, per impostazione predefinita git config scriverà a livello locale quando non viene passato alcun livello di configurazione. Esiste anche un file di configurazione nella sottocartella del repository .git. Sia su Linux che su macOS è archiviato in ~/<MyRepoFolder>/.git/config.
Configurazione di base
Puoi eseguire tutti i passaggi seguenti dal terminale per ottenere un’esperienza migliore.
Puoi configurare Git con il tuo nome
git config --global user.name "<Your-Full-Name>"
Puoi configurare Git con la tua email
git config --global user.email "<your-email-address>"
Puoi assicurarti che l’output di Git sia colorato
git config --global color.ui auto
Puoi visualizzare lo stato originale in caso di conflitto
git config --global merge.conflictstyle diff3
Puoi vedere le configurazioni correnti
git config --list
Git con un editor di codice
Configurazione di Sublime Text
git config --global core.editor "'/Applications/Sublime Text 2.app/Contents/SharedSupport/bin/subl' -n -w"
Configurazione di VSCode
git config --global core.editor "code --wait"
Configurazione di Atom
git config --global core.editor "atom --wait"
Conclusione
In questo tutorial hai imparato i passaggi per l’installazione di Git su vari sistemi operativi. Hai anche visto la configurazione di base necessaria per impostarlo con i tuoi IDE preferiti e hai conosciuto i diversi livelli di configurazione in Git.
Ci sono molte risorse da cui puoi imparare Git:
2. Git Basics
Se vuoi saperne di più su Git, segui il corso di DataCamp Introduction to Git For Data Science.

