In breve
Un repository (o "repo") è la cartella del tuo progetto non appena viene tracciata da uno strumento di controllo di versione, e il controllo di versione è il sistema che registra ogni modifica così puoi sempre tornare indietro. In parole chiare, il controllo di versione è una cronologia di annullamento etichettata e illimitata per tutto il tuo progetto, e il repo è il progetto più questa cronologia. È la base su cui si costruisce tutto il resto: backup, collaborazione e deploy iniziano tutti da un repo sotto controllo di versione.
Cosa ti dà il controllo di versione
Il controllo di versione trasforma una cartella piena di file in qualcosa con cui puoi sperimentare senza paura. Ogni modifica importante è registrata come un'istantanea a cui puoi tornare, quindi una modifica sbagliata non è mai definitiva. Registra anche chi ha cambiato cosa e perché, il che diventa essenziale appena più di una persona tocca il progetto.
Repo locale vs repo remoto
Il tuo repo vive sul tuo computer (il repo locale) e di solito ha una copia online (il repo remoto), il più delle volte su GitHub. Lavori in locale e "pubblichi" le tue modifiche registrate verso il remoto per fare backup e condividerle. I due restano sincronizzati man mano che pubblichi e scarichi modifiche.
Perché conta per pubblicare
Un repo non è solo per la sicurezza, è ciò a cui le piattaforme di hosting si collegano. Quando il tuo progetto è un repo su GitHub, un host come Vercel può sorvegliarlo e ridistribuire automaticamente il tuo sito live ogni volta che pubblichi. Un repo pulito sotto controllo di versione è quindi la via d'accesso per pubblicare davvero il tuo lavoro.
Confusioni frequenti dei principianti
Un repo può sembrare una misteriosa cartella speciale, ma è davvero solo la tua normale cartella di progetto con, in più, una registrazione nascosta delle modifiche. Modifichi i file allo stesso modo. Le persone danno anche per scontato che un repo significhi automaticamente che tutto sia pubblico o salvato; né l'uno né l'altro è vero finché non pubblichi verso un remoto e non scegli la sua visibilità, e un repo business nuovo dovrebbe essere privato di default. Un altro punto da assimilare presto: la cronologia è utile quanto lo sono i tuoi commit. Se committi raramente con messaggi vaghi, la rete di sicurezza è debole; se committi spesso con messaggi chiari, puoi tornare in qualsiasi momento con fiducia. Questa singola abitudine trasforma il controllo di versione da fatica a vera superpotenza.
