Se conosci già il versioning con Git, il prossimo passo è cimentarsi con “la tecnica” GitFlow. Le chiamo tecnica perché non è un reale cambiamento rispetto a Git, ma è piuttosto un insieme di strategie sul come utilizzare Git e i suoi branch in modo proficuo e gestire un flusso di lavoro pulito: versioni, bugfix, e release in ambiente condiviso e, perché no, anche quando si lavora da soli su piccoli progetti.

Se non la hai, ti consiglio di avere una buona preparazione sui comandi base e sulla logica Git: abbiamo una guida a Git per questo.

GitFlow è l’ideale per i progetti che hanno un ciclo di vita ben definito (e cadenzato) , con release continue e hotfix tempestivi. È basato sull’idea che ogni ramo (branch) ha uno scopo ben preciso ed altrettanto precise sono le regole che deve seguire. Ad esempio, GitFlow usa branch specifici per preparare, mantenere, e pubblicare ciascuna release. Un altro modello è usato per gestire le feature che svilupperemo o per gli hotfix da rilasciare al volo. In effetti, si può dire che GitFlow sia un’idea di “come utilizzare un flusso Git” e vedremo in questa guida come gestire ogni caso.

Prima di cominciare, c’è da mettere in chiaro che è possibile utilizzare GitFlow in due modi: il primo utilizzando comuni comandi git, il secondo utilizzando lo strumento git-flow che è un wrapper che ci permette di accorpare diversi comandi “semplici” git. Per ciascuna funzione vedremo come eseguirla sia con quest’ultimi che la forma abbreviata che ci offre  git-flow .