Lavorare con le modifiche

Staging

Il pannello dei commit ha tre elenchi: In conflitto, Non in stage e In stage. Ciascuno si richiude, e ciascuno ricorda se l'hai lasciato aperto.

Un diff non in stage, con accanto i controlli per hunk e per file

Cosa è cambiato, per tipo

L'intestazione sopra gli elenchi spezza il conteggio in chip: modificati, aggiunti, eliminati, rinominati, in conflitto. Gli stessi colori dei glifi sulle righe. Un tipo senza file è semplicemente assente, non mostrato come zero. Passa il cursore sui chip per il totale.

I file non tracciati contano come aggiunti. È l'unico punto in cui il riepilogo dello staging diverge da quello di un commit, perché un commit non ha file non tracciati.

Tre livelli di precisione

Livello Come
File Clicca la ✚ sulla riga, oppure seleziona più righe e mettile in stage tutte
Hunk Apri il diff e usa il pulsante nell'intestazione dell'hunk
Riga Seleziona delle righe dentro il diff e metti in stage esattamente quelle

Lo staging per righe è ciò che rende praticabile tenere un console.log di debug fuori da un commit senza doverlo prima cancellare.

Scartare

Lo scarto funziona agli stessi livelli, e chiede sempre. I file non tracciati vengono eliminati; quelli tracciati tornano al loro stato in stage (o committato).

Tastiera

↑ ↓ (oppure j k) scorrono gli elenchi di file, con ⇧ per un intervallo e ⌘/Ctrl per aggiungere o togliere singoli file.

⇧+↑/↓ estende la selezione dall'ultima riga cliccata. Un clic destro sulla selezione mette in stage, toglie dallo stage, stasha o scarta tutto in una volta.

Copiare i percorsi

Un clic destro su un file non committato offre Copia il percorso del file (assoluto, con i separatori della piattaforma) e Copia il percorso relativo del file (src/index.ts, senza ./ iniziale). Più file selezionati copiano un percorso per riga, nell'ordine dell'elenco. I file eliminati restano disponibili: queste azioni copiano solo testo. Le cartelle continuano a copiare il percorso della cartella.

Prima di committare

Gitcito controlla alcune cose e chiede una volta, mai in silenzio:

  • un file che sembra un segreto (.env, *.pem, id_rsa…),
  • un blob molto grande (soglia in Impostazioni → Sicurezza),
  • il commit diretto su un branch protetto (main/master di default).

Ognuno di questi offre un Ignora e togli dal tracciamento in un clic. Vedi Sicurezza e segreti.

Vedi anche: Fare commit · Diff · Absorb

Migliora questa traduzione su GitHub