I rami sono fondamentali per il concetto di controllo di versione nella programmazione, e Git in particolare. Questo articolo introduttivo spiega cos'è un ramo e come crearne uno utilizzando una serie di strumenti diversi.
Che cos'è un ramo Git?
Nei sistemi di controllo di versione, il termine ramo è usato come un'analogia con gli alberi, nel senso che ogni ramo emerge da un altro, finendo per tornare al tronco. I rami ti consentono di creare singole linee di sviluppo, al fine di lavorarci in isolamento senza disturbare altri lavori.
Relazionato: Come utilizzare i rami Git per strutturare il progetto di programmazione
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 ciclo di sviluppo, puoi creare un nuovo ramo ed eseguire lavori separati in ogni ramo, da quel momento in poi.
Creazione di un nuovo ramo sulla riga di comando
Il programma Git a riga di comando offre la massima potenza e flessibilità, ma c'è molto da imparare. Se ti senti a tuo agio a scavare nelle pagine man e fai un uso intenso di Git, è un'ottima opzione.
Usa il comando git branch per creare un nuovo ramo 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 eseguire il ramo prima di eseguire quel comando.
Puoi elencare tutti i rami e confermare che quello nuovo è stato creato usando git branch senza alcun argomento:
$ git branch 1 dev 2 * master
Puoi vedere più informazioni, incluso quale ramo tiene traccia di un altro, 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 punterà ancora al ramo principale. Per passare al nuovo ramo appena creato, usa git checkout :
git checkout dev
Il termine checkout potrebbe creare confusione se sei abituato ad altri sistemi di controllo della versione; in Git, checkout si riferisce al cambio del ramo attualmente attivo. Poiché 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 "crea un nuovo ramo chiamato 'dev' e passa 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 other , 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 di interfaccia utente grafica (GUI) 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:
Fai clic sul pulsante della barra degli strumenti principale per mostrare 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 tipo di cosa che ti ritrovi a fare molto:
Puoi anche iniziare premendo immediatamente il pulsante Nuovo ramo . Qualunque sia il percorso che prendi, ti ritroverai con una finestra di dialogo per confermare il nuovo nome del ramo:
Il tuo nuovo ramo sarà sempre basato su qualunque ramo fosse attivo quando lo hai creato. GitHub Desktop passerà al tuo nuovo ramo che terrà traccia automaticamente del ramo da cui lo hai creato.
Creare un nuovo ramo usando 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 ritirato, selezionare Crea nuovo ramo dal menu principale Repository :
Per creare un nuovo ramo da qualsiasi ramo disponibile, fai clic con il pulsante destro del mouse sul ramo nella barra laterale di sinistra e seleziona Crea nuovo ramo da :
Tieni presente che, in entrambi i casi, puoi abilitare il ramo come ramo di monitoraggio o modificare il punto di partenza in qualsiasi ramo disponibile:
Creare un nuovo ramo usando GitKraken
GitKraken è un'altra GUI 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 l'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, fai clic sull'icona del ramo nella barra degli strumenti principale:
Inserisci il nome della tua filiale e premi INVIO:
Il nuovo ramo verrà estratto automaticamente 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 corrente (attivo) nella vista del tuo 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 ti viene data 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 della versione 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:
Fare clic sul pulsante Crea ramo in alto a destra. Immettere il nuovo nome della filiale e fare clic su Crea . Se hai bisogno di ramificare da qualsiasi luogo diverso da master , cambia prima il ramo From :
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 espanderti con Git
Git è tutto basato sui rami: sono economici da creare e consentono a più flussi di lavoro di coesistere, pronti per essere uniti una volta completati. Una volta acquisita familiarità con la creazione, il passaggio e l'unione di rami, sarai sulla buona strada per utilizzare Git al massimo delle sue potenzialità.