Menu
Coddy logo textTech

Reimpostare un branch

Fa parte della sezione Controllo delle versioni del percorso Terminal di Coddy. Lezione 44 di 58.

git reset sposta il puntatore del ramo corrente su un commit diverso. L’uso più comune è annullare i commit recenti che non hai ancora condiviso.

git reset --hard HEAD~1

Questo riporta main indietro di un commit e sovrascrive la directory di lavoro per renderla corrispondente. Il commit che hai saltato non è più raggiungibile dal tuo ramo (Git lo conserva per un po' nel caso cambiassi idea, ma aspettati che scompaia).

Esistono tre tipi di reset:

  • --soft: sposta il puntatore del branch; mantieni le modifiche nell'area di staging
  • --mixed (predefinito): sposta il puntatore; rimuovi le modifiche dall'area di staging ma mantieni i file di lavoro
  • --hard: sposta il puntatore; elimina anche le modifiche ai file di lavoro

--hard è la forma più distruttiva. È ottimo per correggere gli errori locali, ma non usarlo mai sui commit che altre persone hanno già scaricato.

challenge icon

Sfida

Medio

La cartella contiene doc.md. Inizializza il repository e crea tre commit in quest’ordine:

  1. Aggiungi doc.md con il messaggio Add doc.
  2. Aggiungi second a doc.md, esegui il commit con il messaggio Second draft.
  3. Aggiungi third a doc.md, esegui il commit con il messaggio Third draft.

Reimposta forzatamente il ramo al primo commit usando HEAD~2. Stampa il contenuto di doc.md.

Provalo tu

Terminale
quiz iconMettiti alla prova

Questa lezione include un breve quiz. Inizia la lezione per rispondere e tenere traccia dei tuoi progressi.

Tutte le lezioni di Controllo delle versioni

Esercitati da solo: Playground Terminal