Uso di Git in Visual Studio per Mac

Importante

Visual Studio per Mac è pianificato per il ritiro il 31 agosto 2024 in conformità ai criteri moderni relativi al ciclo di vita di Microsoft. Anche se è possibile continuare a usare Visual Studio per Mac, esistono diverse altre opzioni per gli sviluppatori in Mac, ad esempio la versione di anteprima della nuova estensione C# Dev Kit per VS Code.

Altre informazioni sulle sequenze temporali e sulle alternative di supporto.

Git è un sistema di controllo della versione della versione distribuito che consente ai team di lavorare contemporaneamente sugli stessi documenti. Ciò significa che è presente un server centrale che contiene tutti i file ma quando viene estratto un repository da questa origine centrale, l'intero repository viene clonato nel computer locale.

Le sezioni seguenti illustrano come è possibile usare Git per il controllo della versione in Visual Studio per Mac.

Menu Controllo della versione di Git

L'immagine seguente illustra le opzioni fornite da Visual Studio per Mac dal menu Git:

Screenshot of the Git menu in Visual Studio for Mac, showing options for Clone Repository, Pull, Commit or Stash, Push, Switch to branch, Merge, Rebase, Manage branches and remotes, Stash, pop stash, manage stashes, and branch history.

Eseguire un commit Git in Visual Studio per Mac

La parte principale di qualsiasi flusso di lavoro Git è la modifica dei file e il commit delle modifiche in tali file. Anche se questo articolo fa riferimento ai repository GitHub, è possibile lavorare in remoto con il provider Git preferito, ad esempio GitHub o Azure DevOps. In alternativa, è possibile lavorare in locale senza provider.

Git tiene traccia delle modifiche dei file nel repository mentre si lavora e separa i file nel repository in tre categorie. Queste modifiche sono equivalenti a quelle visualizzate quando si immette il git status comando nella riga di comando:

  • File non modificati: questi file non sono stati modificati dopo l'ultimo commit.
  • File modificati: questi file hanno modifiche dall'ultimo commit, ma non sono ancora state preparate per il commit successivo.
  • File di staging: questi file presentano modifiche che verranno aggiunte al commit successivo.

Durante il lavoro, Visual Studio per Mac tiene traccia delle modifiche apportate al progetto nella sezione Modifiche della finestra Modifiche Git.

Screenshot of the Git Changes window in Visual Studio for Mac, with a launchSettings.json file displayed in the list of Staged files.

Per preparare le modifiche quando si è pronti, selezionare ogni file da preparare e fare clic sul pulsante Fase oppure fare clic con il pulsante destro del mouse su un file e quindi scegliere Fase.

Quando si esegue una modifica, Visual Studio crea una sezione Modifiche a fasi. Solo le modifiche nella sezione Modifiche a fasi vengono aggiunte al commit successivo, che è possibile eseguire selezionando Commit a fasi. Il comando equivalente per questa azione è git commit -m "Your commit message".

Screenshot of the Git changes dialog, with a launchSettings.json file in the list of Changes, and a SubscriptionService.cs file in the list of staged changes. The current branch name is shown at the top of the window, along with Push, Pull, and Commit Staged buttons.

Le modifiche possono anche essere annullate selezionando tutte le modifiche a fasi e facendo clic sul pulsante Annulla installazione . Il comando equivalente per questa azione consiste git reset <file_path> nell'annullare ilstage un singolo file o git reset <directory_path> annullare ilstage tutti i file in una directory.

È anche possibile scegliere di non organizzare i file modificati ignorando l'area di gestione temporanea. In questo caso, Visual Studio consente di eseguire direttamente il commit delle modifiche senza dover eseguirne il staging. Immettere il messaggio di commit e quindi selezionare Commit All (Commit All). Il comando equivalente per questa azione è git commit -a.

Visual Studio semplifica anche il commit e la sincronizzazione con un solo clic usando i collegamenti Commit tutto e Push e Commit e Sincronizza in "..." Pulsante. Quando si fa doppio clic su qualsiasi file nelle sezioni Modifiche e modifiche a fasi, è possibile visualizzare un confronto riga per riga con la versione non modificata del file.

A screenshot of the comparison view, showing line-by-line differences in changed files.

Eseguire il push e il pull delle modifiche

Push e pull sono due delle azioni utilizzate più di frequente in Git. Per sincronizzare le modifiche apportate da altri utenti nel repository remoto, è necessario eseguire il Pull da tale posizione. Questa operazione viene eseguita in Visual Studio per Mac selezionando il menu Git > Pull .

Dopo aver aggiornato i file, dopo averli rivisti e dopo averne eseguito il commit, è necessario eseguirne il Push nel repository remoto per consentire agli altri utenti di accedere alle modifiche apportate. Questa operazione viene eseguita in Visual Studio per Mac selezionando il menu Git > Push .

È anche possibile eseguire il commit e il push delle modifiche contemporaneamente, tramite la finestra Modifiche Git:

Screenshot of the git Changes window open, showing a ... menu open with a Commit Staged and Push item highlighted.

Uso delle visualizzazioni Blame, Log e Merge

Nella parte superiore della finestra dell'editor è disponibile un elenco a discesa con opzioni di controllo della versione, come illustrato di seguito:

Screenshot of a drop down menu with choices for Source, Changes, Blame, and History.

Queste schede consentono le azioni seguenti:

  • Origine: visualizza il file del codice sorgente.
  • Modifiche: visualizza le modifiche del codice tra il file locale e il file di base. È anche possibile confrontare diverse versioni del file da hash diversi:
  • Segnala errore: visualizza il nome dell'utente associato a ogni sezione del codice.
  • Log: visualizza tutti i commit, le ore, le date, i messaggi e gli utenti responsabili del file:
  • Unisci: può essere usata in caso di un conflitto di unione quando si esegue il commit del lavoro. Mostra una rappresentazione visiva delle modifiche apportate dall'utente e dall'altro sviluppatore, per consentire di combinare correttamente entrambe le sezioni del codice.

Cambio di rami

Per impostazione predefinita, il primo ramo creato in un repository è noto come ramo principale . Non c'è tecnicamente nulla di diverso tra il ramo principale e qualsiasi altro, ma il ramo principale è quello che viene spesso considerato nei team di sviluppo come ramo 'live' o 'production'.

Una linea di sviluppo indipendente può essere creata diramando il ramo principale (o qualsiasi altro ramo, per tale questione). In questo modo viene fornita una nuova versione del ramo principale in un determinato momento, consentendo lo sviluppo indipendentemente da ciò che è "live". Questo uso dei rami è frequente per funzionalità nell'ambiente di sviluppo.

Gli utenti possono creare tutti i rami che desiderano per ogni repository, ma è consigliabile eliminare i rami quando si finisce di usarli per mantenere organizzato il repository.

I rami vengono visualizzati in Visual Studio per Mac passando a Git > Manage Branch and Remotes...:

A screenshot of the Manage Branches and Remotes view, with a location branch selected.

Passare a un altro ramo selezionandolo nell'elenco e premendo il pulsante Passa al ramo.

Per creare un nuovo ramo, selezionare il pulsante Nuovo nella finestra di dialogo di configurazione del repository Git. Inserire il nome del nuovo ramo:

A screenshot of the create new branch dialog, showing a blank name field and a message listing out allowed characters for the branch name.

È anche possibile impostare un ramo remoto per il proprio ramo di verifica. Per altre informazioni sui rami di verifica, vedere la documentazione su Git.

Vedere current branch nella finestra della soluzione accanto al nome del progetto:

A screenshot of the solution window showing a solution named NetPodcast.Services with a branch name of main in parentheses.

Vedi anche