Entra in contatto con noi

Affari e Tecnologia

Come eseguire il checkout di un ramo Git remoto

Pubblicato

il

fatmawati achmad zaenuri/Shutterstock.com Per estrarre un ramo da un repository remoto, usa il comando ‘git fetch’, quindi ‘git branch -r’ per elencare i rami remoti. Scegli il ramo che ti serve e usa un comando nel formato ‘git checkout -b new-branch-name origin/remote-branch-name.’ Se utilizzi più repository, modifica la parte “origin” del comando checkout con il nome del telecomando da cui desideri effettuare il checkout del ramo.

Se il tuo team di sviluppo utilizza Git, alla fine dovrai controllare il lavoro di qualcun altro come ramo da un repository remoto. Come la maggior parte delle operazioni di ramo in Git, passare a un ramo remoto è in realtà abbastanza semplice.

Git, rami e telecomandi Il Idiota la filosofia è ramificarsi spesso. Rami consentire lo sviluppo senza alterare la base di codice principale. Quando sei soddisfatto che il tuo nuovo codice testato sia pronto, tu unisci il tuo nuovo ramo in un altro ramo. Di solito, questo è il ramo principale o principale, ma puoi unire due rami qualsiasi.

A causa di questa flessibilità e del modo leggero e veloce con cui Git gestisce rami e unioni, il branching è stato trasformato. Nei sistemi di controllo delle versioni precedenti, il branching era un grosso problema. La ramificazione e l’unione erano lente e soggette a errori. Git ha fornito agli sviluppatori ramificazioni facili e veloci utilizzate per sostenere molti flussi di lavoro diversi.

Advertisement

Se lavori o fai volontariato come parte di un team di sviluppo che utilizza Git, avrai un repository Git “centrale”, remoto dal computer di ciascun ingegnere del software. Questo è noto come repository remoto o semplicemente “remoto”. È dove vengono inviati i commit e le modifiche al tuo repository locale quando esegui un push.

Ovviamente è quello che stanno facendo anche gli altri sviluppatori. Questo facilita la collaborazione. Se hai bisogno di accedere al lavoro di un altro sviluppatore, devi solo recuperare il loro codice da un ramo sul repository remoto. Se hanno bisogno di accedere al tuo lavoro, recupereranno il tuo codice da un ramo nel repository che tiene traccia di uno dei tuoi rami locali.

In Git, un progetto di sviluppo può avere più telecomandi. Tuttavia, un ramo locale può monitorare solo un singolo ramo remoto. Quindi, fintanto che lavori con il telecomando appropriato, il check-out di un ramo remoto con più telecomandi è lo stesso che utilizzare un singolo telecomando.

Trovare le tue filiali locali Devi evitare conflitti di nomi. Se hai un ramo locale che ha lo stesso nome del ramo remoto che stai per controllare, hai due opzioni. Puoi rinominare il tuo ramo locale e controllare il ramo remoto. In questo modo, il tuo ramo locale che tiene traccia del ramo remoto ha lo stesso nome del ramo remoto. Oppure puoi effettuare il checkout del ramo remoto e dire a Git di creare un ramo di tracciamento locale con un nuovo nome.

Advertisement

Per scoprire i nomi dei rami nel tuo repository locale, usa il file git branch comando.

git branch

Questo repository locale ha un ramo principale e altri tre rami. L’asterisco indica qual è il ramo corrente. Per passare da un ramo all’altro è necessario controllare il ramo con cui si desidera lavorare.

git checkout new-feature git status

Advertisement

Il primo comando cambia il ramo per noi, in modo che “new-feature” sia il ramo corrente. Il git status comando lo verifica per noi.

Possiamo saltare avanti e indietro tra i rami, eseguire il commit di nuove modifiche, estrarre gli aggiornamenti dal remoto e inviare gli aggiornamenti locali al remoto.

IMPARENTATO: Come aggiornare e mantenere rami Git separati

Check-out di una filiale remota C’è un ramo sul repository remoto che non è presente sulla nostra macchina. Uno sviluppatore chiamato Mary ha creato una nuova funzionalità. Vogliamo passare a quel ramo remoto in modo da poter creare quella versione del software localmente.

Advertisement

Se eseguiamo a fetchGit ritirerà i metadati dal repository remoto.

git fetch

Perché questo è il primo fetch abbiamo fatto da quando Mary ha spinto il suo ramo al repository remoto, ci è stato detto che c’è un file nuova filiale chiamato “origine/caratteristica di Maria”. Il nome predefinito per il primo repository remoto aggiunto a un progetto è “origine”.

Indipendentemente dal fatto che vediamo o meno questo messaggio, possiamo sempre chiedere a Git di elencare i rami nel repository remoto.

Advertisement

Il -r L’opzione (remota) indica a Git di segnalare i rami che si trovano nel repository remoto.

git branch -r

Il punto da notare qui è che Git sta controllando il suo Locale copia dei metadati del telecomando. Ecco perché abbiamo usato il git fetch comando per assicurarsi che la copia locale dei metadati sia aggiornata.

Una volta individuato il ramo che vogliamo, possiamo andare avanti e verificarlo. Noi usiamo il git checkout comandare con il -b (ramo), seguita dal nome che useremo per il ramo locale, seguito dal nome del ramo remoto.

Advertisement

git checkout -b mary-feature origin/mary-feature

Possiamo vedere che abbiamo verificato il ramo remoto e creato un ramo locale che terrà traccia delle modifiche nel ramo remoto.

git branch

La nostra nuova filiale locale è ora la nostra attuale filiale di lavoro.

Advertisement

Gestione dei conflitti di nome Se disponi di un ramo locale che ha lo stesso nome del ramo remoto, puoi rinominare il ramo locale prima di estrarre il ramo remoto oppure eseguire il checkout del ramo remoto e specificare un nome diverso per il ramo locale.

Per eseguire il checkout del ramo remoto in un ramo locale con un nome diverso, possiamo usare lo stesso comando che abbiamo usato in precedenza e scegliere un nuovo nome di ramo locale.

git checkout -b mary-test origin/mary-feature

Questo crea un ramo locale chiamato “mary-test” che terrà traccia dei commit locali in quel ramo. I push andranno al ramo remoto “origin/mary-feature”.

Advertisement

Questo è probabilmente il modo migliore per gestire i conflitti di nomi locali. Se vuoi davvero mantenere lo stesso nome del ramo locale e remoto, dovrai rinominare il ramo locale prima di controllare il ramo remoto. Rinominare un ramo è banale in Git.

git branch -m mary-feature old-mary-branch

Ora puoi effettuare il checkout del ramo remoto “origin/mary-feature”.

Gestione di più repository remoti Se hai configurato più repository remoti, devi fare attenzione a lavorare con il repository appropriato quando estrai il ramo remoto.

Advertisement

Per elencare i tuoi repository remoti, usa il file remote comandare con il -v opzione (visualizza).

git remote -v

Per vedere tutti i rami disponibili, dobbiamo recuperare il file metadati da tutti i nostri telecomandi, quindi elenca i rami remoti.

git fetch –all git branch –all

Advertisement

Possiamo vedere che il ramo che vogliamo è nel telecomando “origine”. Il comando per verificarlo è nello stesso formato che abbiamo già utilizzato. Dobbiamo specificare il nome remoto, “origine”, così come il nome del ramo, “mary-feature”.

git checkout -b mary-feature origin/mary-feature

IMPARENTATO: Come cambiare, aggiungere e rimuovere i telecomandi Git

Prima di effettuare il checkout Prima di effettuare il checkout, tieni a mente alcune cose e starai bene.

Advertisement

Assicurati di evitare conflitti di nome. Se hai un ramo locale con lo stesso nome del ramo remoto, decidi se rinominare il ramo locale o creare un ramo con un nome diverso per tenere traccia del ramo remoto.

Se utilizzi più repository remoti, assicurati di utilizzare il telecomando corretto.

IMPARENTATO: Git rebase: tutto quello che c’è da sapere

Advertisement
Advertisement

Trending