Da Anonimo (non verificato) , 29 Aprile 2026

Introduzione

La maggior parte delle persone impara Git nel modo difficile, attraverso piccoli disastri. Questa pagina raccoglie gli errori più frequenti dei principianti e come evitarli (o recuperare). Leggila una volta ora e di nuovo dopo un mese di uso; il secondo passaggio avrà più senso.

Committare con l'identità sbagliata

Dimenticare di impostare user.email per repository fa trapelare indirizzi personali nei commit di lavoro. Imposta sempre un'identità per-repo nei clone di lavoro:

Da Anonimo (non verificato) , 29 Aprile 2026

Introduzione

Git include una documentazione interna estensiva. Saperla evocare rapidamente ti farà risparmiare ore di tentativi alla cieca. Questa pagina fa il giro del sistema di aiuto, dalle one-liner ai manuali completi.

Tre modi di chiedere

Ogni comando supporta tre forme di aiuto:

git help <command>     # man page completa nel tuo pager
git <command> --help    # stessa cosa
git <command> -h        # breve riassunto d'uso

Esempio:

Da Anonimo (non verificato) , 29 Aprile 2026

Introduzione

Un file .gitignore elenca i pattern che Git deve trattare come untracked e non offrire mai di aggiungere. Mantiene fuori dal repository artefatti di build, segreti, metadati del sistema operativo e file temporanei dell'editor.

Da Anonimo (non verificato) , 29 Aprile 2026

Introduzione

git log percorre il grafo dei commit da un punto di partenza (predefinito: HEAD) all'indietro attraverso i parent, stampando ogni commit. È lo strumento principale per esplorare la storia del progetto.

Uso di base

git log
git log --oneline
git log --oneline --graph --decorate --all

L'ultima forma è la vista coltellino svizzero: un grafico compatto di ogni branch con i ref decorati.

Da Anonimo (non verificato) , 29 Aprile 2026

Introduzione

L'index, chiamato anche staging area o cache, è una delle caratteristiche distintive di Git. È un file binario in .git/index che contiene l'albero che intendi committare prossimamente. Capire l'index toglie la maggior parte del mistero dall'output di git status.

Da Anonimo (non verificato) , 29 Aprile 2026

Introduzione

Quasi ogni sessione Git segue lo stesso ritmo a tre fasi: modifica i file nella tua working tree, metti in stage le modifiche che vuoi registrare e fai il commit nella storia. Padroneggiare questo ciclo è la base di tutto il resto.

Da Anonimo (non verificato) , 29 Aprile 2026

Introduzione

git init trasforma una directory ordinaria in un repository Git. Crea una directory nascosta .git contenente tutta la contabilità di Git: oggetti, ref, configurazione e hook. La working tree (i tuoi file normali) è lasciata invariata.

Inizializzare un progetto

mkdir my-project
cd my-project
git init
# Initialized empty Git repository in /home/ada/my-project/.git/

Da Git 2.28 puoi impostare il nome del branch iniziale dalla riga di comando:

Da Anonimo (non verificato) , 29 Aprile 2026

Introduzione

Prima del primo commit, Git deve sapere chi sei. git config memorizza coppie chiave-valore in tre ambiti: system (tutti gli utenti), global (il tuo account utente) e local (un singolo repository). L'ambito globale risiede in ~/.gitconfig su Unix e %USERPROFILE%\.gitconfig su Windows.

Identità

Imposta nome ed email; vengono incorporati in ogni commit:

Da Anonimo (non verificato) , 29 Aprile 2026

Introduzione

Installare Git è semplice su ogni piattaforma principale. Questa pagina illustra il metodo di installazione consigliato per Linux, macOS e Windows, e mostra come verificare l'installazione.

Linux

La maggior parte delle distribuzioni Linux include Git nei repository di pacchetti predefiniti. Usa il tuo gestore di pacchetti:

Da Anonimo (non verificato) , 29 Aprile 2026

Introduzione

Git è un sistema di controllo versione distribuito creato originariamente da Linus Torvalds nel 2005 per lo sviluppo del kernel Linux. Tiene traccia delle modifiche ai file nel tempo, consente la collaborazione tra più persone e fornisce a ogni sviluppatore una copia completa della storia del progetto. Oggi Git alimenta la maggior parte dello sviluppo software open source ed enterprise nel mondo.