Git, un passo
alla volta.
Apri il progetto. Scrivi un comando. Guarda che cosa succede. Il prossimo passo arriva dopo.
3G · 23 ottobre · guida per Windows
Un sito pronto. Una storia da costruire.
Il blueprint è la pagina di un evento di una Pro Loco inventata. La grafica è già pronta: oggi il tuo lavoro è capire che cosa cambia e come conservarne una versione. Solo due file, HTML e CSS; nessuna installazione serve per aprire il sito.
- Prima versione: apri il sito, prepara i due file e registra il primo commit.
- Una modifica: sposta l’orario dalle 14:00 alle 15:00, controlla il diff e registra il secondo commit.
- Un recupero: introduci soltanto l’errore CSS spiegato nella guida e ripristina il file, mantenendo l’orario nuovo.
Se hai già un progetto con i commit, continua quello: non sostituirlo con il nuovo ZIP. Per installazioni, cartella e terminale segui le tappe qui sotto.
Extra per chi è già autonomo
Aggiungi un elemento alla lista “Prima di partire”. Prima del commit mostra al compagno il diff e spiega perché cambia solo HTML. Registra con un messaggio preciso, per esempio Aggiunge il cappello alla lista. Poi scambiate i ruoli.
Quando questi passaggi funzionano, passa alla prova GitHub: repository privato, proposta su un branch, commento del compagno e integrazione. È un’esercitazione online separata; non collega automaticamente la cartella sul PC.
Traguardo: mostra due commit, indica le righe cambiate e spiega perché recuperare il CSS non annulla la modifica HTML.
1. Tre strumenti, tre lavori diversi
- VS Code
- Il programma dove scrivi e modifichi HTML e CSS. Si installa sul PC.
- Git
- Registra la storia dei file. Si installa sul PC e funziona anche senza account e senza Internet.
- GitHub
- Il servizio online per condividere repository e proporre modifiche. Qui si apre nel browser: non serve installare GitHub Desktop.
Un repository è la cartella del progetto con la sua storia Git. Un commit è una versione registrata, con un messaggio che racconta la modifica.
Segui prima la parte locale fino al recupero. Se ti blocchi, apri l’aiuto vicino al passaggio.
Le spunte restano solo in questo browser. Non sono voti e non vengono inviate al docente.
2. Prepara Windows
Apri o installa VS Code
- Premi il tasto Windows e cerca Visual Studio Code.
- Se lo trovi, aprilo: è l’editor con il simbolo blu, non Visual Studio.
- Se manca, apri il download ufficiale di VS Code. Scegli Windows e User Installer per il tuo PC (normalmente x64; se non sai l’architettura, chiedi al docente).
- Apri il file scaricato, leggi i passaggi dell’installazione e avvia VS Code al termine. Per la lezione non servono account Microsoft, estensioni o Copilot.
Se il PC chiede credenziali di amministratore o blocca l’installazione, chiama il docente. Intanto puoi seguire sul PC di un compagno, alternando chi scrive.
VS Code è in inglese
Nella guida trovi i due nomi: Open Folder significa Apri cartella; New Terminal significa Nuovo terminale. Non è necessario cambiare lingua.
Git potrebbe già esserci
Apri cartella e terminale nelle tappe seguenti, poi prova git --version. Installa Git solo se non è disponibile.
Git manca: installazione passo passo
- Apri il download ufficiale di Git per Windows. Scegli l’installer per il PC, normalmente x64 Setup.
- Avvia il file scaricato. Se vengono chiesti permessi di amministratore, chiama il docente.
- Segui l’installazione. Alla scelta del PATH mantieni Git from the command line and also from 3rd-party software: permette di usare Git dal terminale di VS Code. Le altre opzioni predefinite vanno bene per l’esercizio.
- Al termine salva i file aperti, chiudi tutte le finestre di VS Code e riaprilo. Apri di nuovo cartella e un nuovo terminale.
- Scrivi
git --versione premi Invio: deve comparire un numero di versione.
Installare Git non crea un account GitHub. Se il comando non funziona ancora, mostra il messaggio al docente.
A casa uso Mac o Linux
I comandi Git sono gli stessi. Scarica VS Code per il tuo sistema e segui la guida ufficiale per installare Git. Su Mac salva con Cmd+S. Nel terminale usa pwd per vedere la cartella e ls per i file; qui su Windows usiamo PowerShell.
3. Apri la cartella, non soltanto il file
Hai il sito di ieri? Usa la sua cartella e conserva la sottocartella nascosta .git, se presente. In questa guida i file si chiamano index.html e style.css.
Non hai il progetto? Scarica il kit. In Esplora file fai tasto destro → Estrai tutto. Apri la cartella estratta git-primi-passi. Non lavorare dentro lo ZIP.
- In VS Code scegli File → Apri cartella / Open Folder.
- Seleziona la cartella che contiene i due file e premi Seleziona cartella.
- Se compare la domanda sulla fiducia, verifica che sia proprio il tuo progetto o il kit della lezione. Autorizza solo quella cartella conosciuta, non tutta Download.
- Nel pannello sinistro Esplora / Explorer trovi i file. Clicca
index.html: il codice si apre al centro. - In Esplora file di Windows fai doppio clic su
index.htmlper vederlo nel browser. Se apre l’editor, usa tasto destro → Apri con → il browser.
├─ index.html
└─ style.css
Il kit presenta un evento di una Pro Loco inventata, senza dati reali. Guarda la pagina iniziale.
4. Apri il terminale di VS Code
- Dal menu in alto scegli Terminale → Nuovo terminale / Terminal → New Terminal. Se i menu sono sotto …, apri quel menu.
- In basso compare un pannello. Seleziona TERMINALE / TERMINAL, non Output o Console di debug.
- Su Windows scegli PowerShell dal menu vicino al pulsante + se il terminale è diverso: si apre un nuovo terminale.
- Clicca dopo il percorso e il simbolo
>, scrivi un comando e premi Invio. Attendi che ritorni la riga pronta prima del comando successivo.
index.html
style.cssQui scrivi HTML e CSS nei file.
PS C:\…\git-primi-passi> git --version
git version 2.…
Lo schema è un esempio, non un terminale funzionante. Non copiare percorso, simbolo > o risposta di Git. Copia solo il comando:
git --versionRisultato atteso: git version seguito da numeri. La versione può essere diversa da quella del compagno.
“git non è riconosciuto”, “is not recognized” o “command not found”
Il terminale non trova Git. Apri l’aiuto per installarlo. Se l’hai appena installato, chiudi tutte le finestre di VS Code e riaprilo prima di riprovare.
Sei nella cartella giusta?
Get-LocationPowerShell mostra la cartella corrente: deve essere quella del sito. Poi:
dirDevi vedere index.html e style.css. Se vedi Documenti, Download o tanti progetti, non fare ancora git init: riapri la cartella corretta e crea un nuovo terminale. Questi due comandi servono a orientarti, non sono comandi Git.
Il terminale è bloccato o vedo >>
In Restricted Mode / Modalità con restrizioni controlla col docente la fiducia della cartella. Se PowerShell mostra >>, può mancare una virgoletta: premi Ctrl+C per annullare la riga incompleta e riscrivila con le virgolette diritte dell’esempio.
5. Il progetto ha già una storia?
git statusSe vedi “On branch…”, sei già in un repository: non ricominciare. Controlla il percorso con:
git rev-parse --show-toplevelDeve essere la cartella del sito. Se mostra una cartella superiore, come Download o Documenti, fermati e chiama il docente.
Se vedi “not a git repository”, non c’è ancora una storia Git. Dopo aver controllato la cartella con dir, esegui:
git initRisultato atteso: Initialized empty Git repository…, cioè “creato un repository vuoto”. Git aggiunge la cartella nascosta .git: non cancellarla.
Chi firma i commit?
Nel progetto di esercitazione configura un autore fittizio. Esegui una riga alla volta:
git config --local user.name "Studente laboratorio"git config --local user.email "studente@example.invalid"È normale che non compaia una risposta. --local significa “solo in questo repository”. Non è un login. Per un progetto collegato al tuo account, configurerai col docente il nome scelto e l’indirizzo privato noreply fornito da GitHub.
6. Registra la prima versione
Salva entrambi i file con Ctrl+S e prova la pagina nel browser. Poi nel terminale:
git statusNel kit nuovo vedrai Untracked files: file presenti, ma non ancora tracciati. Se il progetto di ieri dice nothing to commit, working tree clean, il commit iniziale è già fatto: passa alla modifica successiva.
git add index.html style.cssadd prepara questi file. Non li pubblica e non registra ancora la versione.
git statusOra i file sono sotto Changes to be committed: “modifiche pronte da registrare”.
git commit -m "Prima versione del sito"commit registra la versione; -m introduce il messaggio, tra virgolette.
git --no-pager log --onelineDevi vedere un codice breve e il messaggio Prima versione del sito. Il codice sarà diverso su ogni PC. --no-pager evita di aprire un lettore separato.
Il commit non parte: che cosa dice?
- Please tell me who you are: esegui le due righe
git config --localdella tappa precedente. - pathspec… did not match any files: controlla cartella, nome ed estensione del file con
dir. - no changes added to commit: devi preparare i file con
git add. - nothing to commit: non ci sono nuove modifiche. Controlla la storia: forse hai già fatto il commit.
Ctrl+S ≠ commit. Ctrl+S salva il file su disco. add seleziona la versione da registrare. commit registra la selezione nella storia. Se modifichi ancora dopo add, salva e ripeti add prima del commit.
7. Cambia una cosa e guarda la differenza
- In
index.htmlcambia 14:00 in 15:00. Nel tuo sito puoi cambiare una breve frase diversa. - Salva con Ctrl+S; nel browser ricarica con Ctrl+R e controlla.
- Nel terminale leggi le differenze prima di registrare:
git --no-pager diff -- index.htmlIl diff è il confronto. - indica una riga tolta, + una aggiunta. Non copiare questi segni nell’HTML.
Prima · riga rimossa
- <p class="orario">Il laboratorio inizia alle 14:00.</p>Dopo · riga aggiunta
+ <p class="orario">Il laboratorio inizia alle 15:00.</p>Il diff è vuoto
Controlla Ctrl+S e git status. Se hai già fatto add, leggi git --no-pager diff --cached. Se hai già fatto il commit, il normale diff vuoto è corretto.
Se è cambiato solo ciò che volevi, registra:
git add index.htmlgit commit -m "Aggiorna l'orario del laboratorio"Se hai cambiato un’altra frase, adatta il messaggio. Poi:
git --no-pager log --onelineIl più recente è in alto. Dal kit hai due commit; con il sito di ieri hai aggiunto un passo alla storia precedente.
8. Un errore piccolo, un recupero controllato
Prima esegui git status: deve dire working tree clean (“nessuna modifica in sospeso”). Se hai altri file non registrati, fai controllare al docente.
- In fondo a
style.cssaggiungi questa riga e salva:
body { color: white; background-color: white; }- Ricarica il browser: nel kit il testo scompare sullo sfondo bianco. Non fare add e non fare commit dell’errore.
- Controlla le differenze:
git --no-pager diff -- style.cssDeve esserci solo la riga di errore appena aggiunta. Se c’è altro da conservare, fermati. Altrimenti recupera il CSS dall’ultimo commit:
git restore --source=HEAD -- style.cssIl comando elimina tutte le modifiche non registrate di style.css. Per questo lo usiamo su un solo errore, dopo aver registrato tutto il lavoro buono e controllato il diff.
Ricarica: il testo torna, l’orario HTML resta alle 15:00. Con git status ritrovi working tree clean. Non serve un nuovo commit: hai annullato un esperimento non registrato.
Ho già fatto add o commit dell’errore
Fermati e mostra git status al docente. Questo esercizio parte da un errore non preparato e non registrato. Se lo stato è diverso non ripetere comandi a caso.
9. Prima di GitHub, prova a spiegare
A coppie: uno esegue, l’altro legge i controlli; poi scambiatevi. Ognuno mostra il terminale, legge un messaggio di commit e spiega una modifica. Queste domande sono allenamento, non verifica.
Hai premuto Ctrl+S. La versione è già nella storia Git?
Quale comando controlla una modifica prima di add?
Se riesci a fare i passaggi locali, continua. Se devi riprovarli, restare qui è parte della lezione.
10. GitHub: il prossimo passo è online
Continua quando lo indica il docente. GitHub si usa dal browser: non devi installare GitHub Desktop o Copilot.
Accedi o crea il tuo account
Se hai un account, apri GitHub → Sign in (Accedi). Ciascuno usa il proprio account: non condividete la password.
Non ho un account: registrazione guidata
- Verifica col docente che l’account sia previsto per l’attività. GitHub richiede almeno 13 anni; possono valere requisiti locali ulteriori.
- Apri GitHub → Sign up (Registrati). Usa un’email che puoi leggere e uno username che non esponga dati personali.
- Segui la procedura, scegli una password personale, leggi le condizioni e completa personalmente l’eventuale verifica.
- Apri la posta e verifica l’email quando richiesto. Non mettere password o codici nella pagina della lezione o in una chat.
- Il piano gratuito basta. Se account o email sono bloccati, chiama il docente e continua il lavoro locale: non serve finire tutto oggi.
Un repository di prova
- Apri + → New repository (“nuovo repository”), oppure la pagina per crearlo.
- Nome:
prove-sito. Visibilità: Private (“privato”). - Attiva Add a README file: aggiungi un file di presentazione, così il repository ha subito un primo commit.
- Premi Create repository. Devi vedere
README.mde l’etichetta Private.
Questa è una nuova esercitazione online, ancora separata dalla cartella sul PC. I commit locali non arrivano qui da soli. Oggi collaboriamo dal browser; clone, push e pull verranno dopo.
11. Una proposta al compagno
Scegliete un solo repository per coppia. Il proprietario invita l’altro; ciascuno lavora dal proprio account.
A. Invita e accetta
- Il proprietario apre il repository → Settings (impostazioni) → Collaborators (collaboratori) → Add people (aggiungi persone).
- Cerca lo username esatto del compagno e invitalo: controllate insieme che sia quello giusto.
- Il compagno accetta l’invito ricevuto e apre lo stesso repository dal proprio account. Se compare 404, controllate account e invito accettato.
B. Un branch per la proposta
Un branch è una linea di lavoro: prepari una modifica senza cambiare subito la versione principale.
- Il compagno apre Code, poi il selettore che normalmente mostra
main. - Scrive
proposta-programmae sceglie Create branch… from main. Se il principale ha un altro nome, parte da quello. - Controlla che ora sia selezionato
proposta-programma. - Apre
README.md, preme la matita Edit e aggiunge:
## Idea per il sito
Aggiungiamo una pagina con il programma dell'evento.Il README è testo in Markdown, non HTML. Premi Commit changes (“registra modifiche”), scrivi Propone la pagina programma e conferma sul branch proposta-programma.
C. Proponi, leggi, correggi
- Apri Pull requests → New pull request. base deve essere
main; compare deve essereproposta-programma. - Leggi il confronto e premi Create pull request. Titolo: Aggiungiamo il programma. Descrizione: una frase su cosa proponi.
- Il proprietario apre la proposta → Files changed (“file modificati”) e legge le righe. In Conversation lascia un commento concreto: «Aggiungi anche il luogo».
- L’autore torna su Code, seleziona lo stesso branch, modifica il README e fa un altro commit. La stessa pull request si aggiorna: non crearne un’altra.
- Quando siete d’accordo, il proprietario preme Merge pull request → Confirm merge (“integra e conferma”).
- Leggete il README su
main: deve contenere la proposta corretta. Poi scambiate i ruoli, creando un nuovo branch da main.
Se Merge è bloccato o compare un conflitto, chiedi al docente. Non cambiare impostazioni e non cancellare file per far sparire l’avviso.
GitHub conserva codice e storia: un repository non diventa automaticamente un sito pubblicato.
12. Prima di chiudere
- Salva i file e controlla
git status. - Conserva tutta la cartella, inclusa .git, dove indica il docente. I soli HTML e CSS non conservano la storia.
- Sul PC condiviso esci da GitHub e non salvare la password nel browser del laboratorio.
Un commit sullo stesso PC non è una copia di sicurezza esterna. Qui non c’è una consegna automatica.
Promemoria e fonti ufficiali
Scarica i comandi spiegati in italiano. Non eseguirli tutti insieme: controlla prima in quale tappa sei.