Per annulare git add prima di fare il commit, esegui git reset <file> o git reset per rimuovere tutti i cambiamenti dallo stage.

In versioni precedenti di Git, i comandi erano rispettivamente git reset HEAD <file> e git reset HEAD. Questo è stato cambiato in Git 1.8.2.

Puoi leggere di più su altri comandi comunemente usati in questi utili articoli:

Ecco un po' più di informazioni di background su Git

Capire le tre sezioni di un progetto Git

Un progetto Git avrà le tre seguenti sezioni principali:

  1. Una directory Git
  2. Una directory di lavoro (o albero di lavoro)
  3. Una area di staging

La directory Git (situata in PERCORSO-DEL-TUO-PROGETTO/.git/) è dove Git immagazzina tutto quello di cui ha bisogno per tenere traccia accuratamente del progetto. Questo include i metadata e un oggetto database che include versioni compresse dei file del progetto.

La directory di lavoro è dove l'utente fa i cambiamenti al progetto. La directory di lavoro prende i file del progetto dall'oggetto database della directory di Git e li posiziona sulla macchina locale dell'utente.

L'area di staging è un file (chiamato anche "index", "stage", o "cache") che salva informazioni su quello che andrà nel tuo commit successivo. Un commit è quando dici a Git di salvare i cambiamenti nell'area di staging. Git prende uno snapshot dei file per come sono e li salva permanentemente nella directory di Git.

Con le tre sezioni, ci sono tre stati principali in cui un file può essere in ogni momento: committed, modificato o nello stage. Tu modifichi un file ogni volta che fai cambiamenti ad esso nella tua directory di lavoro. Poi è nello stage quando lo muovi nell'area di staging. Infine è committed dopo che fai il commit.

Installare Git

Configurare l'ambiente di Git

Git ha uno strumento git config che ti permette di personalizzare il tuo ambiente Git. Puoi cambiare l'aspetto e le funzioni di Git impostando certe variabili di configurazione. Esegui questi comandi dall'interfaccia della linea di comando sulla tua macchina (il terminale su un mac, il Prompt dei Comandi o il Powershell in Windows).

Ci sono tre livelli di dove queste variabili di cofigurazione sono salvate:

  1. Sistema: situato in /etc/gitconfig, applica le impostazioni di default ad ogni utente del computer. Per fare cambiamenti a questo file, usa l'opzione --system con il comando git config.
  2. Utente: situato in ~/.gitconfig o ~/.config/git/config, applica le impostazioni ad un singolo utente. Per fare cambiamenti a questo file usa l'opzione --global con il comando git config.
  3. Progetto: situato in PERCORSO-DEL-TUO-PROGETTO/.git/config, applica le impostazioni al solo progetto. Per fare cambiamenti a questo file usa il comando git config.

Se ci sono impostazioni in conflitto tra di loro, le configurazioni a livello del progetto hanno la precedenza su quelle a livello dell'utente, e quelle a livello dell'utente hanno la precedenza sulle configurazioni di sistema.

Nota per utenti Windows: Git guarda al file per la configurazione per utente (.gitconfig) nella tua cartella $HOME (C:\Users\$USER). Git cerca anche /etc/gitconfig anche se è relativo al root MSys, che è ovunque hai deciso di installare Git sul tuo sistema Windows quando hai eseguito l'installazione. Se stai usando versione 2.x o successiva di Git per Windows c'è anche un file di configurazione a livello di sistema a C:\Documents and Settings\All Users\Application Data\Git\config in Windows XP, e in C:\ProgramData\Git\config su Windows Vista e versioni più recenti. Questo file di configurazione può essere cambiato solo con il comando git config -f FILE da un admin.

Aggiungi il tuo nome e la tua email

Git include il nome utente e la mail come parte delle informazioni in un commit. Imposta il tuo nome utente e la tua mail nel file di configurazione a livello utente con questi comandi:

git config --global user.name "My Name"
git config --global user.email "myemail@example.com"

Cambia il tuo editor di testo

Git usa automaticamente il tuo editor di testo di default, ma puoi cambiarlo. Ecco un comando di esempio per impostare l'editor Atom (l'opzione --wait dice allo shell di aspettare per l'editor di testo così che puoi fare il tuo lavoro in esso prima che il programma vada avanti):

git config --global core.editor "atom --wait"

Aggiungi colori al tuo output di git

Puoi configurare la tua shell per aggiungere colori all'output di Git in questo modo:

git config --global color.ui true

Per vedere tutte le impostazioni di configurazione, usa il comando git config --list.

Inizializzare Git in un progetto

Una volta che Git è installato e configurato sul tuo computer, devi inizializzarlo nel tuo progetto per iniziare a usare i suoi poteri di controllo della versione. Nella riga di comando, usa il comando cd per navigare alla cartella di livello superiore (o root) del tuo progetto. Poi, esegui il comando git init. Questo installa una cartella directory di Git con tutti i file e gli oggetti di cui Git ha bisogno per tenere traccia del tuo progetto.

È importante che la directory di Git sia installata nella cartella root del progetto. Git può tenere traccia di file in sottocartelle ma non tiene traccia di file situati in una cartella genitrice relativa alla directory Git.

Ottieni aiuto in Git

Se dimentichi come funziona qualsiasi comando Git puoi accedere ad aiuti in modi in svariati modi diversi dalla riga di comando:

git help COMANDO
git COMANDO --help
man git-COMANDO

Questo mostra la pagina del manuale per il comando nella tua finestra dello shell. Per navigare, usa i tasti freccia su e freccia giù, o usa le seguenti scorciatoie da tastiera:

  • f o barra spaziatrice per andare alla pagina seguente
  • b per andare alla pagina precedente
  • q per uscire