Come estrarre un repository Git in Linux

click fraud protection

Git definisce un processo di controllo della versione per il modo in cui i progetti dovrebbero essere condivisi. Esistono molti siti Web che ti consentono di ospitare i tuoi progetti Git. GitHub è l'opzione più popolare, Bitbucket è un'altra alternativa popolare, entrambi consentono account gratuiti che possono creare repository pubblici o privati ​​illimitati. GitLab offre un'alternativa self-hosted che consente lo sviluppo privato senza fare affidamento su hosting di terze parti.

Il processo per scaricare prima un repository Git si chiama clonazione. La clonazione include tutte le informazioni sul repository in quel momento, tuttavia, per mantenere il repository aggiornato nel tempo è necessario scaricare nuove versioni. Per farlo è sufficiente aprire una finestra di terminale nella directory con la versione locale del repository e digitare il comando “git pull”.

Il funzionamento di questo comando è particolarmente semplice se desideri solo scaricare una versione aggiornata del repository; la versione locale verrà aggiornata per corrispondere alla versione remota. Tuttavia, potresti notare che potrebbero esserci problemi se hai apportato modifiche alla tua versione locale.

Il comando "git pull" esegue in realtà due comandi separati "git fetch" e "git merge FETCH HEAD". Il sottocomando "git fetch" scarica specificamente la versione più recente dal repository online e la memorizza temporaneamente. Il sottocomando "git merge FETCH HEAD" unisce quindi le modifiche locali con la versione scaricata, preferendo i commit più recenti.

Suggerimento: un "git commit" è l'invio di una modifica, è possibile avere più commit locali e remoti che fanno le stesse cose o cose diverse. I commit locali non sono visibili alla versione remota finché le modifiche non vengono inviate. Ogni commit specifica esattamente quali modifiche sono state apportate e include un timestamp.

Conflitti tra versioni locali e remote

Idealmente in uno scenario di unione, non ci saranno conflitti e il processo di unione verrà completato automaticamente. Le unioni possono essere particolarmente facili se sono state apportate poche modifiche o se le modifiche locali non interferiscono con le modifiche remote. Se, tuttavia, ci sono modifiche complesse in conflitto alla stessa parte del codice, Git genererà un errore di unione.

A questo punto, puoi interrompere l'unione con il comando "git merge –abort" o provare a risolvere manualmente i conflitti. I comandi "git mergetool" e "git diff" forniscono un esempio grafico delle differenze che dovrebbero aiutare per rendere il più semplice possibile vedere quali modifiche devono essere applicate manualmente per consentire l'unione a completare. Una volta risolti tutti i conflitti, digita il comando "git merge –continue" per completare l'unione.

Il comando "git mergetool" aprirà uno strumento grafico come questo per aiutarti a risolvere manualmente i conflitti.