La cartella .git
Fa parte della sezione Controllo delle versioni del percorso Terminal di Coddy. Lezione 5 di 58.
La cartella .git è il luogo in cui Git archivia tutto: ogni commit, ogni branch, la tua configurazione e i puntatori allo stato attuale del repository.
Quasi mai modifichi direttamente qualcosa all'interno di .git. I comandi Git lo modificano per te. Ma è utile sapere cosa contiene:
ls .gitVedrai voci come:
HEAD: un piccolo file che indica il ramo correnteconfig: impostazioni per questo repository specifico
objects/: il database di tutte le istantanee e dei contenutirefs/: puntatori ai rami e ai tag
Se elimini la cartella .git, il progetto smette di essere un repository Git. I file restano, ma l'intera cronologia scompare.
Sfida
PrincipianteInizializza un nuovo repository nella cartella corrente, poi verifica se il file HEAD esiste all'interno della cartella .git.
Usa cat .git/HEAD per stamparne il contenuto. L'output previsto è la riga del puntatore al ramo ref: refs/heads/main.
Qui Git crea ancora
mastercome primo ramo, quindi rinominalo prima di stampare:git init -q(-qè silenzioso: nessun messaggio di benvenuto), poigit branch -m main(-mrinomina il ramo corrente), poicat .git/HEAD. Le versioni più recenti di Git possono fare entrambe le cose in un solo passaggio congit init -b main; questo flag non è necessario qui.
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 ignorareEsercitati da solo: Playground Terminal