Git clone: copiare i repository in Git
Con git clone potete clonare i repository esistenti in modo da poter poi lavorare su una copia a sé stante. Dalla copia di lavoro potete poi eseguire i comandi push e pull.
- Certificato SSL Wildcard incluso
- Registrazione di dominio sicura
- Indirizzo e-mail professionale da 2 GB
Che cos’è git clone?
Al contrario di SVN, Git vi consente di lavorare contemporaneamente in più repository. In questo modo sviluppatrici e sviluppatori possono testare differenti modifiche per l’intero progetto senza correre alcun rischio, e i team lavorare parallelamente senza dover attendere i progressi degli altri membri del gruppo di lavoro.
Poiché le fasi di lavoro non sempre partono da zero, con git clone avete la possibilità di copiare i repository già esistenti e di proseguire il lavoro direttamente nella copia. Tutti i processi di controllo della versione vengono poi gestiti dal nuovo repository locale. Il clone può dunque essere utilizzato per tutte le fasi di sviluppo. La procedura di clonazione crea in automatico un collegamento con il repository originario.
È importante segnalare come Git non faccia alcuna distinzione tra il repository centrale e i suoi cloni; infatti, anche questi ultimi vengono riconosciuti appieno. Invece di modificare il repository originario centrale, i commit vengono separati tra di loro con i comandi git push e git pull.
Nel nostro articolo dove mettiamo Git e SVN a confronto potete scoprire di più sulle analogie e le differenze di entrambi gli strumenti di controllo della versione.
Sintassi di git clone
Pur essendo un semplice comando Git, git clone è uno strumento molto importante per poter lavorare quotidianamente con e alle diverse fasi di sviluppo. La sintassi dei comandi è sempre uguale e la trovate riportata anche sulla nostra pratica guida “Git Cheat Sheet” scaricabile in PDF.
La costruzione classica è la seguente:
git clone <repository></repository>
Con questo comando copiate il repository desiderato (in questo caso chiamato semplicemente “repository”) e salvate la copia sul dispositivo locale. In questo modo l’originale resta inalterato e non adotterà automaticamente eventuali modifiche. Come base per git clone risultano adatti i repository presenti nel sistema dati locale, così come i repository su altri dispositivi e a cui si può accedere tramite HTTP oppure SSH. Ad esempio, con HTTP il comando è il seguente:
git clone https://sitoesempio.it/repository_esterno.git
Qualora sia già presente un nome utente SSH, la sintassi è la seguente:
git clone ssh://utente@esempio.it/nuovo_repository.git
cd nuovo_repository
Scegliere una cartella di destinazione
In aggiunta al procedimento sopra descritto, con git clone potete anche scegliere un luogo di archiviazione preciso in cui salvare la copia. Ciò serve a facilitarvi il lavoro e a migliorare la visione d’insieme. Per farlo posizionate la cartella di destinazione in fondo al comando. A questo punto, il comando corrispondente è:
git clone <repository> <cartelladidestinazione></cartelladidestinazione></repository>
In questo modo la copia ottenuta clonando il repository viene creata all’interno della cartella indicata. Tutti i rami (branch), i file e i commit vengono presi in considerazione e quindi clonati.
Git clone e mirror
Qualora vogliate creare una copia con git clone che non possa essere modificata, utilizzate in aggiunta il termine “mirror”. A essere inclusi sono anche i rami e i riferimenti. Il comando è il seguente:
git clone --mirror
Git clone e bare
Con l’argomento “bare”, invece, ordinate a Git di copiare il repository remoto, ma senza tenere in considerazione la cartella di lavoro. In questo modo potete continuare a utilizzare i comandi push e pull per la copia, senza però poterla modificare direttamente. Il comando corrispondente è:
git clone --bare
Clonare un singolo ramo
Inoltre, potete anche clonare un singolo ramo o branch. Anche in questo caso utilizzate git clone, digitando il seguente comando:
git clone --nome-branch
In questo caso viene clonato il ramo principale. Qualora desideriate clonare un altro ramo, occorre specificarlo. Il comando sarà dunque il seguente:
git clone [url] --branch [branch] --nome-branch
Tuttavia, di norma non dovreste aver bisogno di copiare i singoli rami, in quanto vi conviene copiare sempre l’intero repository.
Clonare determinati tag
Con git clone potete anche copiare determinati tag. Così è come appare il codice:
git clone --branch <tag> <repository></repository></tag>
Git clone e sparse
Soprattutto per i repository particolarmente estesi e ricchi di ramificazioni può avere senso clonare esclusivamente i dati dalla root. L’argomento da utilizzare in questo caso è “sparse”. Il suo utilizzo alleggerisce il lavoro su un repository, contribuisce a migliorare la visione d’insieme e influisce positivamente sulla performance. Il comando intero sarà:
git clone --sparse
Utilizzare i template con git clone
Qualora desideriate utilizzare un template Git con un repository clonato, potete farlo con l’apposito comando:
git clone --template=<template> <repository></repository></template>
In questo modo viene clonato il repository e il template desiderato viene applicato direttamente al ramo locale.
Dovete distribuire i vostri siti web e le vostre app? Con Deploy Now di IONOS ottimizzate i vostri flussi di lavoro e beneficiate di numerose funzionalità che fanno al caso vostro.