MOCKUP v2 · L4 · Git/GitHub
● Mockup v2 · sezione Git/GitHub

Da solo sul tuo computer, poi condiviso.

Git vive sul tuo computer: salvi le tue versioni (commit) anche da solo, senza GitHub. Quando il progetto è pronto per essere condiviso — o solo per avere un backup — lo mandi su GitHub (push). E lì, in più persone, si lavora su capitoli separati: branch, revisione (Pull Request), merge.

Sempre lo stesso principio: un grafico che cresce, un elemento alla volta. Tre parti: 1) sul tuo computer · 2) condividere · 3) lavorare in due.

● Parte 1 · Sul tuo computer

Il progetto vive sul tuo computer.

Il tuo computer

Il progetto (il tuo libro) vive sul tuo computer. Git sta qui, in locale: GitHub non serve ancora.

● Parte 1 · Sul tuo computer

Salvi: un commit.

Il tuo computer

Salvi una versione: è un commit. Come salvare «capitolo_v1» in Word — una foto di tutto il progetto in quel momento. Tutto sul tuo computer.

● Parte 1 · Sul tuo computer

Salvi ancora: v2.

Il tuo computermain

Un altro commit: v2. La storia cresce sul tuo computer. Fin qui, da solo, GitHub non serve: git funziona benissimo così.

● Parte 2 · Condividere a specchio verticale

Quando condividi: push.

GitHub — la copia condivisaIl tuo computerpush ↑

Vuoi condividere il progetto (o solo tenerne un backup)? Lo mandi su GitHub: è il push. La tua storia sale, e ora c’è una copia condivisa in alto.

● Parte 2 · Condividere a specchio verticale

Un collega va avanti.

GitHub — la copia condivisaIl tuo computercommit di un collegaGitHub è avanti di 1

Mentre lavoravi, un collega ha fatto un commit e l’ha spinto su GitHub (quello blu). Ora la copia condivisa è avanti di un commit rispetto alla tua: tu non ce l’hai ancora.

● Parte 2 · Condividere a specchio verticale

Il lavoro degli altri: pull.

GitHub — la copia condivisaIl tuo computerpull ↓

Porti giù il commit del collega (blu): è il pull. Ora la tua copia e GitHub combaciano di nuovo — parti sempre dall’ultima versione di tutti.

● Parte 3 · Lavorare in due

La storia, fin qui.

La storia del progetto — la stessa sul tuo computer e su GitHubmain

Questa è la storia del progetto: la tua, più il commit del collega (blu). Dopo il push e il pull, è la stessa sul tuo computer e su GitHub. Ci lavorate in più: come per un libro, si scrive su capitoli diversi senza pestarsi i piedi — a patto di non toccare lo stesso capitolo insieme.

● Parte 3 · Lavorare in due

Un capitolo a parte.

La storia del progetto — la stessa sul tuo computer e su GitHubmainil tuo capitolo

Per lavorare senza disturbare gli altri, apri un branch: una linea tutta tua, dove porti avanti il tuo capitolo in sicurezza. Il branch nasce sul tuo computer; quando è pronto lo mandi su GitHub per la revisione.

● Parte 3 · Perché un branch

Perché lavorare a parte conviene.

Tre cose concrete che un branch vi dà:

1
I conflitti si vedono. Se in due toccate la stessa frase, git si ferma e ve lo chiede: non unisce di nascosto. Un problema diventa una decisione, non un incidente.
2
Solo dove serve davvero. Tu lavori al capitolo 2, il collega al 5? Si uniscono senza attriti. Git segnala solo le righe che avete cambiato entrambi.
3
Il lavoro a metà resta tuo. La tua bozza non tocca la versione condivisa finché non dici «è pronto»: sperimenti in pace, e condividi solo quando sei pronto.

L’analogia. Caricare un file con lo stesso nome in una cartella condivisa sovrascrive l’altro, e un lavoro sparisce senza avvisare. Il branch è l’opposto: fotocopie separate che confrontate in chiaro — senza confusione — decidendo con calma quale versione tenere.

● Parte 3 · Lavorare in due

Prima di unire: la revisione.

La storia del progetto — la stessa sul tuo computer e su GitHub✓ PRmainil tuo capitolo

Quando il capitolo è pronto, non lo unisci di nascosto: apri una Pull Request. Qualcuno rilegge e approva — lo stesso cancello dell’approvazione del piano, da L1.

● Parte 3 · Lavorare in due

Approvato: merge.

La storia del progetto — la stessa sul tuo computer e su GitHub✓ PRmainil tuo capitolo

Approvato, il capitolo rientra nel libro condiviso: è il merge. Due linee che tornano una — i «due genitori».