Uso di un repository Git remoto

Completato

Finora è stato esaminato solo l'utilizzo di un repository Git locale. Dopo aver sviluppato nuove funzionalità, risolto alcuni bug ed eseguito il commit di tutte queste modifiche nel repository locale, è il momento di condividerle con il team. È necessario caricare le modifiche in un repository remoto.

Prima del caricamento è innanzitutto necessario controllare se anche altri membri del team hanno apportato modifiche. Queste potrebbero infatti avere un impatto sulle modifiche apportate e determinare conflitti con il codice. È pertanto necessario unire il proprio codice alle modifiche in ingresso. In questi casi, i conflitti sono denominati conflitti di merge. Risolvere questi conflitti all'interno del repository locale prima di caricare le modifiche nel repository remoto.

Si è iniziato creando un repository locale con il comando init. Ciò significa anche che non esiste ancora un repository remoto connesso. Per collegare un repository remoto sarà necessario usare il comando remote.

Questo repository può essere ospitato in Azure Repos, GitHub o altre piattaforme. Quando si crea un nuovo progetto in Azure DevOps, viene automaticamente creato un repository. Al repository verrà assegnato lo stesso nome del progetto in Azure DevOps.

Un progetto può contenere più repository ed è quindi sempre possibile crearne uno nuovo facendo clic sul nome del repository in alto e selezionando + Nuovo repository.

Screenshot del comando + Nuovo repository in Azure DevOps.

Azure DevOps genera automaticamente un collegamento che è possibile usare per sincronizzare il repository locale con quello remoto. Il collegamento può essere stabilito in due modi.

Creare prima un repository locale e quindi usare la sezione Esegui il push di un repository esistente dalla riga di comando per collegare il repository locale a quello remoto. Usare il comando remote add. Questo comando ha due parametri. Il primo è il nome che identifica il repository remoto. Per impostazione predefinita, il nome che viene usato è origine. Ma è possibile modificarlo in devops, se si preferisce. Il secondo parametro è il collegamento al repository remoto.

git remote add <shortname> <url>
git push -u origin --all

Il comando Git push verrà illustrato in un'altra unità di questo modulo ma, in questo caso, tutti i dati esistenti verranno caricati nel repository remoto e l'operazione verrà eseguita per tutti i rami. In presenza di un repository remoto vuoto, questo comando creerà un ramo master ed eventuali altri rami. Il ramo master locale verrà collegato al ramo master remoto.

Per ottenere un elenco di tutti i repository remoti collegati al repository locale si può usare l'opzione -v.

git remote -v

Per rimuovere il collegamento a un repository remoto è possibile usare remote rm.

git remote rm <shortname>

Anche in Visual Studio Code è disponibile un'opzione per collegare il repository remoto. Usare Visualizza, Riquadro comandi (CTRL+MAIUSC+P) e cercare Git: Add Remote

Screenshot della ricerca di Git: Add Remote in Visual Studio Code.

È prima necessario specificare un nome, ad esempio origine, e quindi l'URL Git remoto. Dopo il collegamento di un repository remoto viene visualizzata un'icona indicante che il repository locale è collegato. L'icona può anche essere un'icona di sincronizzazione su cui è possibile fare clic per sincronizzare i due repository.

In questo esempio si tratta dell'icona di una nuvola che sta a indicare che non è ancora stato eseguito il comando push per creare un ramo nel repository remoto e caricare i file. È possibile fare clic su questa icona per pubblicare le modifiche.

Screenshot con l'icona di una nuvola che indica la necessità di eseguire un comando push.

Un altro modo per collegare un repository remoto al repository locale è creare prima un repository remoto e usare la funzione clone per creare un repository locale. Con questo approccio non è necessario inizializzare prima un repository locale. Il comando clone verrà illustrato nella prossima unità.