Capire
Vedere Git come grafo di snapshot: oggetti, ref, HEAD. Niente magia, solo puntatori e hash.
corso laboratorio / metodo
Dalla storia confusa al grafo che racconta il progetto.
Un percorso in sette moduli per sviluppatori che vogliono passare da Git per intuito a Git per metodo: modello mentale, branch, rebase, collaborazione remota, workflow di team e recupero da disastri.
idea centrale
Ogni commit, branch e merge è una decisione che lascerai a chi leggerà il codice fra sei mesi — incluso te. Per questo serve metodo: nomi chiari, commit isolati, workflow scelto, recupero pianificato.
cosa impari
Vedere Git come grafo di snapshot: oggetti, ref, HEAD. Niente magia, solo puntatori e hash.
Costruire commit isolati e messaggi leggibili. La storia che lasci è documentazione.
Lavorare con branch, PR e remoti senza sovrascrivere lavoro altrui o rompere main.
Riscrivere storia in sicurezza e recuperare con reflog quando qualcosa va storto.
roadmap formativa
Prima il modello mentale (oggetti, HEAD, index), poi i comandi quotidiani, branch e merge. Quindi riscrittura della storia, collaborazione con remoti, workflow di team e casi reali di recupero.
Cosa è davvero Git sotto il cofano: oggetti, riferimenti, working tree, index e HEAD. Senza modello mentale, ogni comando diventa scaramanzia.
Costruisci il modello mentale di Git: oggetti, snapshot, HEAD, index. Senza, ogni comando è magia nera.
Add, commit, status, log, diff, restore, reset: la routine giornaliera che decide se la storia del progetto sarà leggibile o un disastro.
Padroneggi la routine quotidiana: staging mirato, commit leggibili, diff letti prima di ogni azione.
Lavorare in parallelo senza intralciarsi: creare branch, integrarli, risolvere conflitti senza panico e leggere il grafo.
Lavori con branch corti, integri con merge consapevole, risolvi conflitti con metodo invece di tentativi.
Rebase interattivo, squash, amend, reflog: come ripulire la storia locale prima della condivisione, senza farsi male.
Riscrivi la storia locale con rebase interattivo, amend, cherry-pick. Reflog come rete di sicurezza.
Clone, fetch, pull, push, tracking branch, force-with-lease, fork: lavorare con repository remoti senza sovrascrivere il lavoro altrui.
Collabori con remoti senza sovrascrivere il lavoro altrui: fetch, force-with-lease, fork, pull request.
Trunk-based, GitHub Flow, GitFlow, conventional commits, semantic versioning: scegliere e applicare un workflow coerente con il prodotto.
Scegli un workflow di team motivato (trunk-based, GitHub Flow, GitFlow) e adotti Conventional Commits + SemVer.
Bisect, blame, worktree, submodule, hook e procedure di recupero: gli strumenti che separano chi sopravvive a Git da chi lo padroneggia.
Diagnostichi regressioni con bisect, leggi storia con blame, gestisci submodule/worktree, recuperi disastri.
per chi e fatto
Serve uso quotidiano di Git (anche solo add, commit, push) e almeno un progetto reale versionato. Il corso non insegna a programmare: insegna a versionare il codice come professionista.
cosa non e
risultato atteso