Processi Git nei team reali: quale workflow scegliere
Durante i colloqui viene spesso chiesto: «Quale Git-workflow hai usato?» Dopo questa sezione avrai una risposta onesta e dettagliata. Esamineremo tre approcci popolari — Feature Branch Workflow, Git Flow e Trunk-Based Development — e analizzeremo dove ciascuno funziona bene e dove invece diventa un ostacolo.
- Sarai in grado di descrivere tre comuni Git-workflow durante un colloquio e spiegare le loro differenze.
- Capirai come la dimensione del team e la frequenza dei rilasci influenzano la scelta del processo di sviluppo.
- Imparerai a fare le giuste domande sul workflow quando entri a far parte di un nuovo team.
Phần đầu bài giảng
Perché scegliere Feature Branch Workflow?
- Feature Branch = bozza separata di un capitolo
- Isolamento del codice per lavoro parallelo
- Esperimenti sicuri senza rischi per main
- Semplicità di implementazione per team di qualsiasi livello
- Ideale per iniziare e per progetti piccoli
Immaginate di lavorare a un libro e di creare una bozza separata per ogni capitolo. È esattamente così che funziona il Feature Branch Workflow: ogni nuova funzionalità vive in un ambiente isolato. Questo approccio permette ai team di lavorare su compiti diversi contemporaneamente, senza creare caos nel codice principale. Potete sperimentare tranquillamente, sapendo che il ramo principale rimane stabile. È particolarmente adatto a team piccoli, dove contano velocità e flessibilità. Quando la funzionalità è pronta, passa attraverso una code review e solo dopo entra nel codice principale. Semplicità ed efficacia: ecco cosa rende questo approccio così popolare.
Ciclo di vita di un feature branch
- git checkout -b feature/new-payment
- Commit con messaggi chiari
- git push origin feature/new-payment
- Creazione di una pull request
- Code review e merge in main
Percorriamo insieme l'intero percorso di un feature branch, dalla creazione al merge. Iniziamo con il comando git checkout meno b feature slash new-payment — così creiamo un nuovo ramo partendo da main. Lavoriamo sul compito, facciamo commit descrivendo i cambiamenti in modo chiaro e dettagliato. Quando la funzionalità è pronta, eseguiamo il push del ramo sul repository remoto e creiamo una pull request. I colleghi esaminano il codice, lasciano commenti e, dopo tutte le correzioni, le modifiche confluiscono nel ramo principale. Una regola importante: un ramo per ogni compito logicamente completo. Questo aiuta a mantenere ordinata la cronologia dei commit.
# Creiamo un ramo partendo da main
git checkout main
git pull origin main
git checkout -b feature/new-payment
# Lavoriamo e facciamo commit
echo 'Add payment processing' > payment.js
git add payment.js
git commit -m 'Aggiunto modulo di elaborazione pagamenti'
# Eseguiamo push e creiamo la PR
git push origin feature/new-payment
# Successivamente creiamo una Pull Request tramite l'interfaccia di GitHub
Creiamo un feature branch con 2 comandi
- Feature Branch Workflow — semplicità ed efficacia
- Creiamo un ramo partendo da un main aggiornato
- git checkout -b feature/new-login
- Il nome del ramo riflette il compito
- feature/, fix/, docs/ — prefissi per chiarezza
Creiamo un feature branch nella pratica. Passiamo al ramo principale e lo aggiorniamo: git checkout main doppio ampersand git pull. Ora creiamo un nuovo ramo per il nostro compito: git checkout meno b feature slash new-login. Il flag meno b dice a Git di creare un nuovo ramo e di passare immediatamente ad esso. Solo due comandi e siete pronti per lavorare. Assicuratevi che il nome del ramo rifletta l'essenza del compito: feature slash, fix slash o docs slash all'inizio aiutano a capire immediatamente lo scopo del ramo. Ora potete iniziare le modifiche.
git checkout main && git pull
# Aggiorniamo il ramo principale
git checkout -b feature/new-login
# Creiamo e passiamo al nuovo ramo
Bài giảng đầy đủ dành cho thuê bao
Còn 31 slide nữa trong phiên bản đầy đủ.
Video, toàn bộ slide, ghi chú, bài kiểm tra, gia sư AI và phỏng vấn sẽ mở sau khi đăng nhập và đăng ký thuê bao.
Đăng nhập hoặc đăng ký Đăng ký thuê baoNội dung bài giảng
- Perché scegliere Feature Branch Workflow?
- Ciclo di vita di un feature branch
- Creiamo un feature branch con 2 comandi
- Inviiamo le modifiche per la review
- Completiamo la code review e facciamo il merge
- Git Flow: una pipeline per lo sviluppo
- Feature branch e preparazione al rilascio
- Correzioni urgenti con hotfix
- Pratica: creazione di un ramo feature
- Avviare Git Flow in un progetto
- Sviluppo di una nuova funzionalità: dal ramo all'unione
- Preparare una release: impacchettare le modifiche
- Correzioni urgenti: hotfix in azione
- Trunk-Based Development: l'essenza dell'approccio
- Come gestire funzionalità non complete in TBD
- Pratica: commit frequenti su main
- Quando scegliere Trunk-Based Development
- Errore 1: Git Flow per un piccolo team
- Errore 2: Trunk-Based senza code review
- Errore 3: Feature branch di lunga durata
- Come scegliere il workflow giusto
- Come scegliere il processo Git: criteri chiave
- Feature Branch: l'auto cittadina per startup
- Git Flow: il SUV per grandi team
- Trunk-Based: la Formula 1 per rilasci frequenti
- Analisi del processo Git attuale: cosa non va in Git Flow
- Piano di migrazione: come traslocare da una villa a un monolocale
- Formazione del team sulle nuove pratiche TBD
- Pratica: migrare un branch feature al TBD
- Come parlare del workflow in un colloquio
- Esempi di problemi e relative soluzioni
- Come introdurre cambiamenti nel processo
- Cosa non dire durante un colloquio
- Scegli la tua strada: riepilogo e compito a casa
Bài viết liên quan đến bài học này
- Git merge và rebase: nên chọn cái nào cho nhóm
- Câu hỏi về Git khi phỏng vấn: 25 câu hỏi và đáp án
- Git Flow, GitHub Flow và trunk-based: chọn quy trình Git nào
- Git và GitHub: khác nhau thế nào và liên hệ ra sao
- Cách cài đặt Git trên Windows, macOS và Linux
Tất cả bài giảng của khóa học
- 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