Rimuovere un file dallo staging
Fa parte della sezione Controllo delle versioni del percorso Terminal di Coddy. Lezione 41 di 58.
Se hai aggiunto per sbaglio all'area di staging un file che non volevi includere nel commit successivo, puoi rimuoverlo dall'area di staging con:
git restore --staged secrets.txtIl flag --staged indica a git restore di modificare l’area di staging invece della directory di lavoro. Il contenuto effettivo del file non viene modificato; viene reimpostato solo il suo stato nell’area di staging.
Dopo aver rimosso la messa in staging, git status mostra di nuovo il file come modificato ma non in staging (oppure di nuovo come non tracciato, se il file non era mai stato sottoposto a commit). Puoi quindi scegliere di mettere in staging un insieme diverso di modifiche oppure lasciare la modifica per dopo.
Questo si abbina bene a git restore filename (senza --staged) quando vuoi annullare completamente la modifica: prima rimuovila dall'area di staging, poi ripristina il file.
Sfida
FacileLa cartella contiene todo.txt e secrets.txt e non è ancora un repository.
- Inizializza il repository, configura l'identità dell'utente e crea un commit contenente solo
todo.txt. - Aggiungi una riga a
todo.txt, ad esempioecho "buy milk" >> todo.txt. - Aggiungi all'area di staging entrambi i file, quindi rimuovi dall'area di staging solo
secrets.txt. - Esegui
git status --shortper vedere il risultato.
Output previsto (nota l'ordine): prima la riga modificata e aggiunta all'area di staging per todo.txt, poi la riga non tracciata per secrets.txt.
Provalo tu
Questa lezione include un breve quiz. Inizia la lezione per rispondere e tenere traccia dei tuoi progressi.
Tutte le lezioni di Controllo delle versioni
4Esaminare le modifiche
Git DiffDifferenze delle modifiche in stagingGit ShowRiepilogo: lavoro da detective2Per iniziare
Inizializzare un repositoryLa cartella .gitConfigura la tua identitàStato di GitRiepilogo - Primo repository5Ignorare i file
Perché ignorare i filePattern di .gitignoreVerificare le regole di ignoramentoRiepilogo - Repository pulito8Unione
Che cos’è un mergeMerge fast-forwardMerge a tre vieConflitti di mergeRisolvere un conflittoRipasso - Maestro del merge11Progetto con un ramo di funzionalità
Panoramica del progettoInizializzare main3Tracciare le modifiche
L'area di stagingGit AddGit CommitModificare un file tracciatoGit LogRiepilogo: i primi commit6Progetto di un sito di ricette
Panoramica del progettoInizializzare e ignorare9Annullare le modifiche
Scartare le modifiche non in stagingRimuovere un file dallo stagingModificare l’ultimo commitAnnullare un commitReimpostare un branchRiepilogo - Macchina del tempoEsercitati da solo: Playground Terminal