Uso di un repository Git remoto

Completato

Dopo aver creato un collegamento tra il repository Git locale e il repository remoto tramite il comando remote o il comando clone, la sincronizzazione non avviene automaticamente. Usare i comandi push e pull per ottenere e inviare dati da e verso il repository remoto.

La procedura migliore consiste nell'eseguire prima di tutto un comando pull e quindi un comando push.

git pull <remote-name> <branch-name>

Se i file vengono modificati da altri collaboratori, verranno probabilmente generati conflitti di unione. Risolvere questi conflitti nel repository locale prima di eseguire il comando push nel repository remoto. I conflitti risolti produrranno un nuovo commit nel repository locale. Il comando pull scarica tutti i file nuovi e modificati nel repository locale. Questa operazione viene eseguita solo per il ramo attualmente in uso. È quindi possibile eseguire il comando push.

git push <remote-name> <branch-name>

In Visual Studio Code i comandi pull e push sono disponibili nel menu dei comandi SCM. Fare clic sui tre puntini di sospensione per aprire il menu. È anche possibile usare il comando sync che prima di tutto esegue il comando pull e, in assenza di conflitti, esegue automaticamente il comando push.

Screenshot del menu dei comandi SCM con le opzioni push, pull e sync.

È anche possibile fare clic sull'icona Sincronizza nell'angolo in basso a sinistra della finestra di Visual Studio Code, accanto al nome del ramo.

Screenshot dell'icona Sincronizza nella finestra di Visual Studio Code.

Ogni volta che si esegue un commit locale, Visual Studio Code mostra il numero di commit già eseguiti rispetto al repository remoto. Tuttavia, è possibile che qualcun altro abbia aggiunto nuovi commit al repository remoto. In questo caso, si è indietro di alcuni commit rispetto al repository remoto ed è necessario prima di tutto eseguire il comando pull prima del comando push.

È possibile visualizzare lo stato nell'angolo in alto a sinistra della finestra. Nell'esempio seguente il repository locale è avanti di un commit rispetto al repository remoto. È possibile osservare che è necessario eseguire il push di un commit.

Screenshot dell'avviso sullo stato di sincronizzazione con un commit di cui eseguire il push.

Per verificare se vi sono nuovi commit in attesa, è possibile usare il comando fetch. Il comando fetch chiederà al repository remoto se sono state apportate modifiche strutturali al repository. Sono stati creati nuovi rami? È stato eseguito il push di nuovi commit? La creazione di rami verrà trattata in un altro modulo, ma se viene creato un ramo nel repository remoto, prima di tutto è necessario eseguire il comando fetch perché il repository locale rilevi che è stato creato un nuovo ramo.

git fetch

In Visual Studio Code è necessario selezionare Visualizza, Riquadro comandi (CTRL+MAIUSC+P) per cercare il comando Recupera. Il comando Recupera (elimina) rimuove le voci locali nei rami remoti se questi rami vengono eliminati nel repository remoto.

Screenshot dei comandi fetch di Git in Visual Studio Code.

Visual Studio Code supporta l'opzione Recupero automatico. Questa impostazione esegue automaticamente il comando fetch ogni determinato numero di secondi. In questo modo, Visual Studio Code mostra automaticamente se sono presenti commit in arrivo nel repository remoto. È possibile abilitare o disabilitare questa impostazione tramite File, Preferenze, Impostazioni (CTRL+,). Nell'elenco delle impostazioni cercare Recupero automatico per visualizzare due impostazioni che è possibile modificare. Una consente di abilitare o disabilitare l'impostazione di recupero automatico e l'altra di impostare il periodo.

Screenshot dell'impostazione Recupero automatico in Visual Studio Code.

Uso di un repository Git remoto

Il video seguente mostra come usare un repository Git remoto.