Lavoro di squadra: fork, feature branch e pull request
Questa sezione descrive come funziona il 90% dei team open-source e aziendali. Seguiremo l'intero ciclo: fork → feature branch → commit → pull request → code review → merge. Analizzeremo separatamente come scrivere la descrizione di una PR affinché il revisore comprenda immediatamente il contesto e quali errori nella PR tradiscono subito un principiante.
- Sarai in grado di contribuire a qualsiasi progetto open-source seguendo il ciclo standard fork → PR.
- Imparerai a creare una pull request in modo che il revisore capisca il compito senza ulteriori domande.
- Capirai come reagire correttamente ai commenti durante il code review, sia dal punto di vista tecnico che comunicativo.
Inizio della lezione
Fork: la tua sandbox personale
- Fork: la tua copia personale del repository su GitHub
- Controllo completo senza rischi per l'originale
- Mantiene la connessione con il progetto originale
- Ideale per esperimenti e contributi open-source
Immagina di aver trovato un libro interessante in biblioteca, ma di non poterci fare annotazioni. Il fork risolve questo problema creando una tua copia personale del repository su GitHub. Ora puoi sperimentare con il codice senza rischiare di danneggiare il progetto originale. Questo è particolarmente utile quando devi testare un'idea o contribuire a un progetto altrui. Il tuo fork rimane collegato al repository originale, semplificando il tracciamento degli aggiornamenti e l'invio delle modifiche all'autore.
Come creare un fork su GitHub
- Clicca il pulsante Fork nell'angolo in alto a destra
- Scegli il tuo account come destinazione
- Aspetta la creazione della copia
- Clona il tuo fork sulla macchina locale
Apri il repository desiderato su GitHub e trova il pulsante 'Fork' nell'angolo in alto a destra. Dopo aver cliccato, scegli il tuo account come destinazione. In pochi secondi GitHub creerà una copia esatta del repository nel tuo profilo. Ora puoi clonarlo sul tuo computer con il comando git clone e iniziare a lavorare. Ricorda di verificare di clonare il tuo fork, non il repository originale.
# Clonazione del tuo fork sul computer
git clone https://github.com/tuo-username/repository.git
# Spostati nella directory del progetto
cd repository
# Verifica dei repository remoti
git remote -v
Fork vs Clone: qual è la differenza?
- Clone: copia locale sul tuo computer
- Fork: copia remota nel tuo account GitHub
- Il fork mantiene la connessione con il repository originale
- Comodo per sincronizzare le modifiche
Sebbene entrambi i processi creino una copia del repository, c'è una differenza sostanziale. Il clone scarica il codice sul tuo computer, mentre il fork crea una copia remota nel tuo account GitHub. Il fork mantiene la connessione con il progetto originale, permettendo di sincronizzare facilmente le modifiche. Questo è un punto chiave quando partecipi a progetti open-source: lavori nel tuo fork e poi proponi le modifiche all'autore tramite una pull request. Ora che hai creato la tua copia del progetto, è il momento di portarla sulla macchina locale e imparare a lavorarci.
La lezione completa è disponibile con l'abbonamento
30 altre slide nella versione completa.
Video, tutte le slide, appunti, test, tutor AI e intervista si sbloccano dopo l'accesso e l'abbonamento.
Accedi o registrati Attiva l'abbonamentoContenuti della lezione
- Fork: la tua sandbox personale
- Come creare un fork su GitHub
- Fork vs Clone: qual è la differenza?
- Cloniamo il fork sul computer
- Aggiungiamo upstream per la sincronizzazione
- Verifica dei repository remoti
- Perché servono branch separati?
- Creare un ramo feature
- Come nominare correttamente i rami
- Perché servono commit atomici
- Scrivere il messaggio di commit perfetto
- Errori comuni nei commit
- Perché pubblicare un ramo nel fork
- Comando git push per pubblicare un ramo
- Verifica del ramo pubblicato
- Pull Request come richiesta di modifiche
- Titolo della PR: sintetico e pertinente
- Descrizione della PR: cosa, perché e come verificare
- Errori tipici nelle PR
- Il mostro delle PR: perché le pull request grandi uccidono la revisione
- Descrizione della PR: la tua occasione per spiegare, non per scusarti
- Una PR, un compito, ovvero come non mescolare modifiche non correlate
- Code Review come dialogo con un editor
- Rispondi a ogni commento
- Fissa le correzioni con commit separati
- Perché sorgono conflitti durante il merge
- Aggiorniamo il ramo prima del merge
- Troviamo e risolviamo i conflitti
- Completiamo la risoluzione del conflitto
- Pulizia dopo un merge riuscito
- Eliminiamo il ramo feature su GitHub
- Aggiorniamo il repository locale
- Maestro del lavoro di squadra: dal fork al merge
Articoli su questa lezione
- Git e GitHub: qual è la differenza e come sono collegati
- Come installare Git su Windows, macOS e Linux
- Cos'è Git e perché ogni sviluppatore deve conoscerlo
- Git Bash: cos'è e come usarlo su Windows
- git fetch e git pull: qual è la differenza e quale scegliere
Tutte le lezioni del corso
- Introduzione: Git da zero a sviluppatore fiducioso
- Perché serve Git — e perché senza non ti assumono
- Installazione e configurazione: prepariamo Git al primo avvio
- Primo repository: init, add, commit e la magia dell'indice
- Leggiamo la storia: log, diff, show e navigazione nel passato
- Branch: la realtà parallela del tuo codice
- Annullare gli errori: restore, reset, revert — correttamente e con cautela
- GitHub e repository remoti: il tuo codice nel cloud
- Lavoro di squadra: fork, feature branch e pull request
- Conflitti di unione: niente panico — analizziamo e risolviamo
- Processi Git nei team reali: quale workflow scegliere
- Strumenti avanzati: rebase, stash, cherry-pick e tag
- Progetto finale: simuliamo uno sviluppo di gruppo reale