.## 1. Introduzione
- 1 2. Installare Git su Ubuntu
- 2 3. Configurazione iniziale di Git
- 3 4. Lavorare con i repository GitHub
- 4 5. Integrazione con Visual Studio Code
- 5 6. Risoluzione dei Problemi Comuni
Perché collegare Ubuntu a GitHub?
Negli ultimi anni, l’uso di Git e GitHub è diventato una pratica standard nello sviluppo software e nelle operazioni di sistema. Per ingegneri e programmatori che lavorano in ambienti Linux come Ubuntu, integrare GitHub fa parte del flusso di lavoro quotidiano.
Git è uno strumento per gestire la cronologia delle versioni del codice sorgente ed è essenziale per una collaborazione efficiente tra più sviluppatori. GitHub, d’altra parte, è un servizio di hosting che consente di condividere e pubblicare online i repository gestiti da Git, fungendo da hub globale per gli sviluppatori che scambiano codice.
Perché usare GitHub su Ubuntu?
Ubuntu è una distribuzione Linux molto popolare tra gli sviluppatori ed è nota per la sua eccellente compatibilità con lo sviluppo open‑source. Fornisce un ambiente in cui Git e altri strumenti di sviluppo possono essere installati facilmente, rendendo l’integrazione con GitHub fluida ed efficiente.
Tipici casi d’uso per combinare Ubuntu e GitHub includono:
- Gestire e condividere codice Python, C++ e altri su GitHub
- Contribuire a progetti open source
- Pubblicare il proprio lavoro come portfolio
Cosa imparerai in questo articolo
Questa guida spiega tutto, dalle basi alle funzionalità avanzate di GitHub su Ubuntu attraverso i seguenti passaggi:
- Come installare Git su Ubuntu
- Configurazione iniziale di Git e impostazione SSH
- Creazione e gestione di repository GitHub
- Sviluppo efficiente usando Visual Studio Code
- Consigli comuni di risoluzione problemi e FAQ
Anche gli utenti alle prime armi con GitHub possono seguirla in sicurezza, con esempi di comandi reali e note importanti incluse. Se vuoi sfruttare al massimo GitHub su Ubuntu, continua a leggere fino alla fine.
2. Installare Git su Ubuntu
Cos’è Git? Un rapido ripasso
Git è un Sistema di Controllo Versione (VCS) usato nello sviluppo software per gestire la cronologia delle modifiche del codice sorgente. Consente agli sviluppatori di ripristinare stati precedenti e collaborare simultaneamente.
Uno dei principali vantaggi degli ambienti Linux come Ubuntu è la facilità con cui Git può essere installato. Usando il metodo qui sotto, l’installazione può essere completata in pochi minuti tramite il terminale.
Installare Git tramite APT
Il modo più comune per installare Git su Ubuntu è utilizzare APT (Advanced Package Tool). Segui questi passaggi:
1. Aggiorna l’elenco dei pacchetti
sudo apt update
Questo comando recupera le informazioni più recenti sui pacchetti. Eseguilo sempre prima di installare nuovo software.
2. Installa Git
sudo apt install git
Quando ti viene chiesto “Y/n”, digita y e premi Invio per avviare l’installazione.
Verifica l’installazione di Git
Dopo l’installazione, conferma che Git sia installato correttamente:
git --version
Se vedi un output simile al seguente, Git è stato installato con successo:
git version 2.34.1
Il numero di versione può variare a seconda della tua versione di Ubuntu, ma qualsiasi output di versione conferma il successo.
Installazione tramite Snap (opzionale)
Sebbene Git possa anche essere installato usando il comando snap, APT è generalmente più stabile e ampiamente usato. A meno che tu non abbia una ragione specifica, si consiglia APT.
3. Configurazione iniziale di Git
Configurazione essenziale prima di usare Git
Una volta installato Git, il passo successivo è configurare informazioni utente e autenticazione. Una configurazione corretta garantisce un’interazione fluida con i repository remoti e i flussi di lavoro del team.
Impostare nome utente e email di Git
Git registra chi ha effettuato ogni commit. Pertanto, devi configurare un nome utente e un indirizzo email.
Comandi di configurazione
git config --global user.name "Your Name"
git config --global user.email "you@example.com"
Questi valori non devono corrispondere esattamente al tuo account GitHub, ma usare la stessa email di GitHub aiuta ad associare correttamente i commit.
Verifica della configurazione
git config --list
Questo comando mostra la tua configurazione Git attuale.
Generazione e registrazione delle chiavi SSH
Sebbene HTTPS sia supportato, l’autenticazione SSH elimina le richieste ripetute di password e fornisce un flusso di lavoro più sicuro ed efficiente.
1. Genera una chiave SSH
ssh-keygen -t ed25519 -C "you@example.com"
Premi Invio più volte per generare una chiave privata (~/.ssh/id_ed25519) e una chiave pubblica (~/.ssh/id_ed25519.pub).
2. Avvia l’agente SSH e aggiungi la chiave
eval "$(ssh-agent -s)"
ssh-add ~/.ssh/id_ed25519
La chiave SSH è ora pronta per l’uso.
3. Aggiungi la chiave pubblica a GitHub
Copia la chiave pubblica:
cat ~/.ssh/id_ed25519.pub
Quindi registrala su GitHub:
- Accedi a GitHub
- Clicca sulla tua immagine del profilo → Impostazioni
- Seleziona “Chiavi SSH e GPG”
- Clicca su “New SSH key”, incolla la chiave e salva
4. Testa la connessione SSH
ssh -T git@github.com
Digita yes quando ti viene chiesto di fidarti dell’host.
Se ha avuto successo, vedrai:
Hi your-username! You've successfully authenticated, but GitHub does not provide shell access.
Prossimi passi consigliati
Con questa configurazione completata, ora puoi clonare, pushare e pullare i repository GitHub. La sezione successiva spiega come creare e gestire i repository GitHub nella pratica.

4. Lavorare con i repository GitHub
Creare un nuovo repository su GitHub
Dopo aver effettuato l’accesso a GitHub, inizia creando un nuovo repository.
Passaggi (via browser web)
- Clicca sul pulsante “+” nell’angolo in alto a destra della homepage di GitHub e seleziona “New repository”.
- Inserisci le seguenti informazioni:
- Nome del repository : Esempio:
my-first-repo - Descrizione (opzionale) : Una breve spiegazione
- Pubblico / Privato : Scegli la visibilità del repository
- Clicca su “Create repository”.
Dopo la creazione, verrà mostrato l’URL del repository. Utilizzerai questo URL per clonare e gestire il repository.
Clonare un repository GitHub esistente
Per copiare un repository nel tuo ambiente Ubuntu locale, usa il comando git clone.
git clone git@github.com:your-username/my-first-repo.git
Questo esempio utilizza SSH. Se usi HTTPS, l’URL sarà diverso.
Dopo l’esecuzione, verrà creata una directory chiamata my-first-repo contenente i file del repository.
Modifiche ai file, staging e flusso di lavoro dei commit
1. Aggiungi o modifica file
Ad esempio, crea un nuovo file:
echo "# My First GitHub Project" > README.md
2. Metti in staging le modifiche
git add README.md
Lo staging seleziona quali modifiche saranno incluse nel prossimo commit.
3. Esegui il commit delle modifiche
git commit -m "Initial commit: add README.md"
Le tue modifiche sono ora salvate nella cronologia del repository locale.
Pushare le modifiche su GitHub
Per riflettere le modifiche locali sul repository remoto GitHub, usa git push.
git push origin main
Se il tuo branch predefinito non è main (ad esempio master), adatta il nome del branch di conseguenza.
Pullare le modifiche remote in locale
Se un altro sviluppatore ha apportato modifiche, usa il comando seguente per aggiornare il tuo repository locale:
git pull origin main
Questo unisce le modifiche remote nel tuo branch locale.
Operazioni aggiuntive comuni
- Verifica i repository remoti:
git remote -v
- Aggiungi un altro repository GitHub in seguito:
git remote add origin git@github.com:your-username/another-repo.git
- Modificare README.md o .gitignore segue lo stesso flusso di lavoro.
5. Integrazione con Visual Studio Code
Perché VS Code è ideale per le operazioni Git
Quando usi GitHub su Ubuntu, combinarlo con Visual Studio Code (VS Code) migliora notevolmente la produttività. VS Code è un editor open-source sviluppato da Microsoft ed è noto per la sua eccellente integrazione con Git. Consente commit, push e revisioni dei diff tramite interfaccia grafica, rendendolo adatto ai principianti.
Installare VS Code su Ubuntu
Puoi installare facilmente VS Code su Ubuntu seguendo i passaggi seguenti.
1. Aggiungi il repository Microsoft
sudo apt update
sudo apt install wget gpg
wget -qO- https://packages.microsoft.com/keys/microsoft.asc | gpg --dearmor > packages.microsoft.gpg
sudo install -o root -g root -m 644 packages.microsoft.gpg /usr/share/keyrings/
2. Registra il Repository
sudo sh -c 'echo "deb [arch=amd64 signed-by=/usr/share/keyrings/packages.microsoft.gpg] https://packages.microsoft.com/repos/vscode stable main" > /etc/apt/sources.list.d/vscode.list'
3. Installa VS Code
sudo apt update
sudo apt install code
Dopo l’installazione, puoi avviare VS Code digitando code nel terminale.
Supporto Git Integrato
VS Code include l’integrazione Git per impostazione predefinita, quindi non sono necessari plugin aggiuntivi per le operazioni Git di base. Per un utilizzo avanzato, sono consigliate le seguenti estensioni:
- GitHub Pull Requests and Issues Consente la gestione di Pull Request e Issue tramite interfaccia grafica.
- GitLens Visualizza la cronologia riga per riga, mostrando chi ha modificato cosa e quando.
Operazioni Git di Base in VS Code
Aprire un Repository
Naviga al tuo repository clonato ed esegui:
code .
Revisionare le Modifiche e Committare
- Fai clic sull’icona Controllo del Codice Sorgente nella barra laterale sinistra
- Visualizza l’elenco dei file modificati
- Seleziona un file per vedere le differenze
- Inserisci un messaggio di commit e fai clic sull’icona ✓
Operazioni di Push e Pull
- Seleziona “Push” o “Pull” dal menu “…”
- Oppure usa la barra di stato in basso a destra
Utilizzare il Terminale Integrato
Il terminale integrato (Ctrl + `) consente di passare senza interruzioni tra i flussi di lavoro GUI e CLI. Ad esempio, puoi effettuare commit tramite l’interfaccia grafica e gestire i rami tramite il terminale.
Suggerimenti per la Risoluzione dei Problemi
- Se si verificano errori SSH, verifica che VS Code faccia riferimento alla chiave SSH corretta
- Potrebbe essere necessario riconfigurare l’autenticazione o utilizzare un Token di Accesso Personale GitHub (PAT)
6. Risoluzione dei Problemi Comuni
Errore SSH: “Permission denied (publickey).”
Possibili Cause
- Le chiavi SSH non sono state generate correttamente
- La chiave pubblica non è registrata su GitHub
- L’agente SSH non sta caricando la chiave
Soluzioni
- Controlla se esiste una chiave SSH:
ls ~/.ssh/id_ed25519.pub
Se non esiste, generane una:
ssh-keygen -t ed25519 -C "your_email@example.com"
- Avvia l’agente SSH e aggiungi la chiave:
eval "$(ssh-agent -s)" ssh-add ~/.ssh/id_ed25519
- Aggiungi la chiave pubblica a GitHub:
cat ~/.ssh/id_ed25519.pub
Aggiungila sotto “SSH and GPG keys” su GitHub.
- Testa la connessione:
ssh -T git@github.com
Errore di Autenticazione con HTTPS
Causa
- L’autenticazione con password è stata deprecata; è richiesta l’autenticazione basata su token
Soluzione
- Crea un Personal Access Token su GitHub https://github.com/settings/tokens Seleziona lo scope
repodurante la creazione del token - Usa il tuo nome utente GitHub e la stringa del token come password
- Abilita il caching delle credenziali, se desiderato:
git config --global credential.helper cache
Errore: “fatal: not a git repository”
Causa
- La directory corrente non è un repository Git
Soluzione
- Spostati in una directory di repository esistente:
cd ~/your-project-directory
- Oppure inizializza un nuovo repository:
git init
Gestione dei Conflitti di Merge
Causa
- I conflitti si verificano quando più utenti modificano simultaneamente la stessa sezione di un file
Soluzione
- Apri il file in conflitto dopo un errore
git pull - Cerca i marcatori di conflitto:
<<<<<<< HEAD Your changes ======= Other changes >>>>>>> origin/main
- Modifica il contenuto, rimuovi i marcatori e salva
- Quindi esegui:
git add . git commit
Errore: “remote: Repository not found.”
Causa
- URL del repository errato
- Nessun permesso di accesso al repository
Soluzione
- Controlla l’URL remoto:
git remote -v
- Reimposta l’URL se necessario:
.“` git remote set-url origin git@github.com:your-username/your-repo.git
Questi problemi si verificano comunemente per i principianti. Tuttavia, con cause e soluzioni chiare, possono essere risolti con calma. Considera gli errori come **opportunità di apprendimento** e costruisci gradualmente fiducia.
## 7. FAQ
### Q1. Qual è la differenza tra Git e GitHub?
**A:**
Git è uno **strumento di controllo versione** che gestisce la cronologia delle modifiche localmente. GitHub è un **servizio cloud** che ospita repository Git e consente la condivisione e la collaborazione.
* Git: gestione della cronologia locale e offline
* GitHub: hosting di repository online e collaborazione
### Q2. Devo usare SSH o HTTPS?
**A:**
**SSH è consigliato** perché:
* Nessuna inserimento ripetuto della password
* Più sicuro e conveniente a lungo termine
Tuttavia, HTTPS può essere richiesto in alcuni ambienti aziendali o di rete.
### Q3. Come posso usare più account GitHub su Ubuntu?
**A:**
Genera chiavi SSH separate per ogni account e configurale esplicitamente.
1. Crea chiavi SSH separate Esempi: `~/.ssh/id_ed25519_work` , `~/.ssh/id_ed25519_personal`
2. Modifica `~/.ssh/config` :
Host github.com-work HostName github.com User git IdentityFile ~/.ssh/id_ed25519_work
Host github.com-personal HostName github.com User git IdentityFile ~/.ssh/id_ed25519_personal
3. Aggiorna l'URL remoto :
git remote set-url origin git@github.com-work:your-work-user/your-repo.git
### Q4. Posso usare Git con una GUI?
**A:**
Sì. Visual Studio Code offre operazioni Git basate su GUI, inclusi commit, push, diff e gestione dei rami. È altamente consigliato per i principianti.
### Q5. Cosa succede se elimino il repository remoto?
**A:**
Eliminare un repository remoto non influisce sul repository locale. Tuttavia, `git push` fallirà.
Puoi riconnetterti a un nuovo remoto come segue:
git remote set-url origin git@github.com:new-user/new-repo.git
### Q6. È possibile evitare completamente il terminale?
**A:**
Sì. I client Git con GUI consentono flussi di lavoro senza terminale:
* **GitKraken**
* **Sourcetree** (non supportato ufficialmente su Linux)
* **Visual Studio Code** (supporto Git integrato)
Per gli utenti Ubuntu, la combinazione **VS Code + GitLens** è la più pratica e user‑friendly.
### Q7. Quanto indietro può andare la cronologia di Git?
**A:**
Git conserva **tutta la cronologia dal primo commit**. Puoi visualizzarla usando:
git log
Per visualizzare la cronologia di un file specifico:
git log path/to/file “`


