Come creare un nuovo ramo in Git
I rami sono centrali per il concetto di controllo della versione nella programmazione, e Git in particolare. Questo articolo introduttivo spiega cos'è un ramo e come crearne uno utilizzando una serie di strumenti diversi.
Cos'è un ramo Git?
Nei sistemi di controllo della versione, il termine ramo è usato come un'analogia con gli alberi, nel senso che ogni ramo emerge da un altro, finendo infine nel tronco. I rami consentono di creare singole linee di sviluppo, in modo da lavorarci in isolamento senza disturbare altri lavori.
Usando Git, lavorerai sul ramo master per impostazione predefinita, che tu ne sia consapevole o meno. Questo è spesso indicato come ramo attivo , corrente , estratto o HEAD . In qualsiasi momento durante il tuo ciclo di sviluppo, puoi creare un nuovo ramo ed eseguire lavori separati in ogni ramo, da quel punto in poi.
Creazione di un nuovo ramo sulla riga di comando
Il programma Git da riga di comando offre la massima potenza e flessibilità, ma c'è molto da imparare. Se ti senti a tuo agio a scavare nelle pagine di manuale e fai un uso massiccio di Git, è un'ottima opzione.
Usa il comando git branch <branchname> per creare un nuovo branch con il nome dato:
$ git branch dev
Branch 'dev' set up to track local branch 'master'.
Questo si dirama dal ramo corrente, quindi assicurati di essere passato a quello da cui vuoi diramare prima di eseguire quel comando.
Puoi elencare tutti i rami e confermare che il nuovo è stato creato usando git branch senza argomenti:
$ git branch
1 dev
2 * master
Puoi vedere più informazioni, incluso quale ramo di un'altra traccia, usando il flag -vv :
$ git branch -vv
1 dev d1a9e5b [master] commit comment
2 * master d1a9e5b commit comment
Se provi a creare un ramo prima del primo commit, riceverai un messaggio di errore del tipo:
fatal: Not a valid object name: 'master'.
Se provi a creare un ramo utilizzando un nome già esistente, riceverai un messaggio di errore del tipo:
fatal: A branch named 'dev' already exists.
Il comando git branch crea un nuovo ramo che punta allo stesso commit su cui stai attualmente lavorando. Tuttavia, la tua copia di lavoro continuerà a puntare al ramo principale. Per passare al nuovo ramo che hai appena creato, usa git checkout :
git checkout dev
Il termine checkout potrebbe creare confusione se sei abituato ad altri sistemi di controllo delle versioni; in Git, il checkout si riferisce alla commutazione del ramo attualmente attivo. Dato che di solito vorrai passare a un nuovo ramo una volta creato, c'è una scorciatoia per l'intero processo:
git checkout -b dev
Quel comando significa "creare un nuovo ramo chiamato 'dev' e passare ad esso immediatamente". È l'equivalente di:
git branch dev
git checkout dev
In effetti, puoi persino utilizzare git checkout per creare un ramo da qualsiasi altro, non solo da quello attualmente estratto. Ad esempio, per creare un nuovo ramo chiamato altro , dal ramo denominato dev :
git checkout -b another dev
Creazione di un nuovo ramo utilizzando GitHub Desktop
Un altro modo per creare rami Git su Windows o macOS è utilizzare GitHub Desktop , il programma GUI (graphical user interface) ufficiale fornito da GitHub. L'uso di una GUI è perfetto per i principianti e per coloro che hanno incubi quando qualcuno sussurra la parola Vim.
GitHub Desktop mostrerà sempre il tuo ramo corrente nella barra degli strumenti principale:

Fare clic sul pulsante della barra degli strumenti principale per visualizzare i dettagli dei rami del repository, inclusa l'opzione per creare un nuovo ramo:

Nota che, se inizi a digitare un nome di ramo senza corrispondenze, GitHub Desktop ti chiede di creare un nuovo ramo e mostra la scorciatoia da tastiera per farlo, utile se è davvero il genere di cose che ti ritrovi a fare spesso:

Puoi anche iniziare premendo immediatamente il pulsante Nuovo ramo . Qualunque percorso tu scelga, ti ritroverai con una finestra di dialogo per confermare il nuovo nome del ramo:

Il tuo nuovo ramo sarà sempre basato su quello che era attivo quando lo hai creato. GitHub Desktop passerà al tuo nuovo ramo che traccerà automaticamente il ramo da cui lo hai creato.
Creazione di un nuovo ramo utilizzando Tower
Altre GUI sono disponibili da terze parti. Tower è gratuito per un periodo di prova di 30 giorni ed è disponibile su macOS e Windows.
Per creare un nuovo ramo dal ramo attualmente estratto, seleziona Crea nuovo ramo dal menu principale del repository :

Per creare un nuovo ramo da qualsiasi ramo disponibile, fai clic con il pulsante destro del mouse sul ramo nella barra laterale sinistra e seleziona Crea nuovo ramo da <nome ramo> :

Tieni presente che, in entrambi i casi, puoi abilitare il ramo come ramo di tracciamento o modificare il punto di partenza in qualsiasi ramo disponibile:

Creazione di un nuovo ramo utilizzando GitKraken
GitKraken è un'altra interfaccia grafica popolare che all'inizio può sembrare intimidatoria, ma fa un buon lavoro nel rappresentare visivamente i concetti chiave di Git, inclusi i rami. GitKraken è gratuito per uso open source ed è disponibile per Windows, Mac e Linux.
Assicurati di lavorare con il ramo attivo corretto; è quello evidenziato nell'elenco dei rami nella barra laterale di sinistra:

Per creare un nuovo ramo, fare clic sull'icona del ramo nella barra degli strumenti principale:

Inserisci il nome del tuo ramo e premi INVIO:

Il nuovo ramo verrà automaticamente estratto e riceverai una notifica sul lato destro dello schermo.
Creazione di un nuovo ramo su GitHub
In alternativa all'esecuzione di un'app locale, puoi ospitare il tuo repository su una delle due popolari app web che supportano Git. Il primo, GitHub , è un'opzione molto popolare tra la comunità open source.
GitHub mostra il tuo ramo (attivo) corrente nella visualizzazione del repository, vicino all'angolo in alto a sinistra:

Fare clic sul pulsante per visualizzare i rami esistenti:

Digita il nome del tuo nuovo ramo e nota che hai la possibilità di crearlo dal ramo corrente:

Una volta creato, il tuo nuovo ramo diventa attivo.
Creazione di un nuovo ramo su Bitbucket
Bitbucket è un'altra popolare app web per il controllo delle versioni che offre account gratuiti con un numero illimitato di repository privati.
Da qualsiasi pagina del tuo repository, seleziona la voce Rami dal menu a sinistra:

Fai clic sul pulsante Crea ramo in alto a destra. Immettere il nuovo nome del ramo e fare clic su Crea . Se devi diramare da qualsiasi luogo diverso dal master , cambia prima il ramo Da :

Bitbucket semplifica la selezione di un tipo che è un prefisso aggiunto al nome del ramo che può incoraggiare un approccio più organizzato ai rami. È solo una convenzione, piuttosto che una funzionalità Git incorporata, ma può rivelarsi utile.
Una volta creato, Bitbucket mostra una vista del tuo nuovo ramo:
Impara a ramificarti con Git

Git è incentrato sui rami: sono economici da creare e consentono a più flussi di lavoro di coesistere, pronti per essere uniti al termine. Una volta acquisita familiarità con la creazione, il cambio e l'unione di rami, sarai sulla buona strada per utilizzare Git al massimo delle sue potenzialità.