Preferenze e impostazioni Git in Visual Studio

Azure DevOps Services | Azure DevOps Server 2022 - Azure DevOps Server 2019

Visual Studio 2019 | Visual Studio 2022

In Visual Studio è possibile visualizzare e configurare diverse impostazioni e preferenze correlate a Git. Ad esempio, è possibile impostare il nome e l'indirizzo di posta elettronica per i metadati di commit, specificare gli strumenti diff e merge preferiti e impostare il percorso predefinito della cartella per i cloni di repository.

Le impostazioni e le preferenze git in Visual Studio rientrano in due categorie principali:

  • Git Global Impostazioni, che si applicano a tutti i repository Git per l'utente corrente.

  • Git Repository Impostazioni, che si applicano al repository Git attivo.

All'interno di queste categorie, le impostazioni possono essere:

  • Impostazioni del file di configurazione Git, che è possibile visualizzare e modificare in Visual Studio, nella riga di comando o modificando un file di configurazione Git. Esempi di impostazioni del file di configurazione Git sono nome utente, indirizzo di posta elettronica e alias remoti. Git archivia le impostazioni nei file di configurazione git di sistema, globali e locali:

    • Le impostazioni del file di configurazione Git di sistema si applicano a tutti gli utenti e i repository nel computer.

    • Le impostazioni globali del file di configurazione Git si applicano a tutti i repository per l'utente corrente. Le impostazioni globali hanno la precedenza sulle impostazioni di sistema.

    • Le impostazioni del file di configurazione Git locale si applicano al repository locale che contiene il file di configurazione Git locale. Le impostazioni di sistema hanno la precedenza sulle impostazioni globali.

  • Impostazioni correlate a Git di Visual Studio, ovvero impostazioni di Visual Studio correlate a Git, ma non archiviate in alcun file di configurazione Git. È possibile visualizzare e modificare queste impostazioni solo in Visual Studio. Un esempio di una di queste impostazioni è il percorso predefinito della cartella in cui Visual Studio clona i repository.

In questo articolo viene spiegato come:

  • Esplorare le impostazioni git
  • Modificare le impostazioni del file di configurazione Git
  • Modificare le impostazioni correlate a Git di Visual Studio

Esplorare le impostazioni git

Visual Studio 2022 offre un'esperienza di controllo della versione Git usando il menu Git, Le modifiche Git e tramite i menu di scelta rapida in Esplora soluzioni. Visual Studio 2019 versione 16.8 offre anche l'interfaccia utente Git di Team Explorer . Per altre informazioni, vedere la scheda Visual Studio 2019 - Team Explorer .

  1. Per configurare le impostazioni Git in Visual Studio, scegliere Git > Impostazioni dalla barra dei menu per aprire la visualizzazione Opzioni.

    Screenshot dell'opzione Impostazioni nella barra dei menu di Visual Studio.

  2. Nella visualizzazione Opzioni scegliere Git Global Impostazioni per visualizzare le impostazioni applicabili a tutti i repository.

    Screenshot di Git Global Impostazioni nella finestra di dialogo Opzioni di Visual Studio.

    In alternativa, nella visualizzazione Opzioni scegliere Repository Git Impostazioni > Generale per visualizzare le impostazioni applicabili solo al repository di progetto di Visual Studio corrente.

    Screenshot di Git Repository Impostazioni nella finestra di dialogo Opzioni di Visual Studio.

Modificare le impostazioni del file di configurazione Git

È possibile visualizzare e modificare le impostazioni di configurazione Git in Visual Studio o modificando direttamente il file di configurazione Git applicabile. Per altre informazioni sulle impostazioni dei file di configurazione Git, vedere Personalizzazione della documentazione di Git e git-config. Nelle sezioni seguenti viene illustrato come modificare ognuna delle impostazioni del file di configurazione Git elencate:

Nome e indirizzo di posta elettronica

Quando si esegue il commit delle modifiche, Git aggiunge il nome e l'indirizzo di posta elettronica ai metadati del commit. È possibile modificare il nome e l'indirizzo di posta elettronica che Git userà.

Le impostazioni di nome e posta elettronica sono disponibili nell'ambito globale o del repository.

Scegliere Git Impostazioni dal menu Git > e quindi selezionare la visualizzazione Git Global Impostazioni. Tale visualizzazione contiene il nome e le impostazioni di posta elettronica per l'utente corrente.

Screenshot delle impostazioni di nome e posta elettronica in Git Global Impostazioni nella finestra di dialogo Opzioni di Visual Studio.

In alternativa, scegliere Repository Git Impostazioni > Generale per modificare il nome e le impostazioni di posta elettronica per il repository del progetto di Visual Studio corrente.

Eliminare rami remoti durante il recupero

È possibile indicare a Git di eliminare rami remoti durante ogni recupero per rimuovere rami di rilevamento remoto non aggiornati nel repository locale che non esistono più nel repository remoto corrispondente.

Scegliere Git Impostazioni dal menu Git > e quindi selezionare la visualizzazione Git Global Impostazioni. Tale vista contiene i rami remoti Prune durante l'opzione di recupero per l'utente corrente.

Screenshot dei rami remoti prune durante l'impostazione di recupero in Git Global Impostazioni nella finestra di dialogo Opzioni di Visual Studio.

In alternativa, scegliere Repository Git Impostazioni > Generale per modificare i rami remoti prune durante l'impostazione di recupero per il repository del progetto di Visual Studio corrente.

I valori validi sono:

  • True (scelta consigliata)
  • False
  • Unset (predefinito)

Eseguire il pull di un ramo locale di rebase

È possibile scegliere di ribasere il ramo locale quando si esegue il pull per riprodurre le modifiche nel ramo locale sopra la cronologia dei rami remoti.

L'impostazione Rebase local branch quando si esegue il pull corrisponde al git config pull.rebase comando . È possibile specificare questa impostazione nell'ambito globale o repository.

Scegliere Git Impostazioni dal menu Git > e quindi selezionare la visualizzazione Git Global Impostazioni. Tale vista contiene il ramo locale di Rebase quando si esegue il pull dell'utente corrente.

Screenshot dell'impostazione di ribase in Git Global Impostazioni nella finestra di dialogo Opzioni di Visual Studio.

In alternativa, scegliere Repository Git Impostazioni > Generale per modificare il ramo locale di Rebase durante il pull per il repository di progetto di Visual Studio corrente.

I valori validi sono:

  • True: ribasere il ramo corrente sopra il ramo remoto dopo il recupero.
  • False: unire il ramo remoto nel ramo corrente.
  • Merges: rebase senza appiattire i commit di merge creati in locale.
  • Unset (impostazione predefinita): a meno che non venga specificato diversamente in un file di configurazione Git, unire il ramo remoto nel ramo corrente.

Provider di rete crittografica

È possibile specificare il provider di rete crittografico come back-end TLS/SSL che Git userà in fase di esecuzione.

L'impostazione Provider di rete crittografica corrisponde al git config http.sslBackend comando . Questa impostazione è disponibile solo nell'ambito globale.

Scegliere Git Impostazioni dal menu Git > e quindi selezionare la visualizzazione Git Global Impostazioni. Tale vista contiene l'opzione Provider di rete crittografica per l'utente corrente.

Screenshot dell'impostazione Provider di rete crittografica con OpenSSL selezionato in Visual Studio.

I valori validi sono:

  • OpenSSL: usare OpenSSL per i protocolli TLS e SSL.
  • Secure Channel: usare Il canale sicuro per i protocolli TLS e SSL. Secure Channel è la soluzione nativa di Windows che contiene un set di protocolli di sicurezza che forniscono l'autenticazione delle identità e la comunicazione privata sicura tramite crittografia.
  • Unset (impostazione predefinita): se questa impostazione non è impostata, per impostazione predefinita il provider di rete di crittografia è OpenSSL.

Helper credenziali

Quando Visual Studio esegue un'operazione Git remota, l'endpoint remoto potrebbe rifiutare la richiesta perché richiede credenziali per la richiesta. In questo caso, Git richiama un helper delle credenziali per ottenere le credenziali necessarie e quindi ritenta la richiesta. È possibile specificare l'helper delle credenziali che Git userà.

L'impostazione helper credenziali corrisponde al git config credential.helper comando . Questa impostazione è disponibile solo nell'ambito globale.

  1. Scegliere Git Impostazioni dal menu Git > e quindi selezionare la visualizzazione Git Global Impostazioni per configurare questa impostazione.

  2. Impostare l'helper credenziali sul valore desiderato e selezionare OK per salvare.

    Screenshot dell'impostazione dell'helper delle credenziali nella finestra di dialogo Opzioni in Visual Studio.

I valori validi sono:

  • GCM for Windows: usare Git Credential Manager per Windows come helper.
  • GCM Core: usare Git Credential Manager Core come helper.
  • Unset (impostazione predefinita): se questa impostazione non è impostata, viene usato l'helper credenziali impostato nella configurazione di sistema. A partire da Git per Windows 2.29, l'helper delle credenziali predefinito è GCM Core.

Strumenti di unione e diff

È possibile specificare gli strumenti che Git userà per visualizzare differenze o conflitti di unione.

Le impostazioni dello git config diff.tool strumento diff e merge corrispondono ai comandi e git config merge.tool . È possibile impostare Visual Studio come strumento merge o diff oppure configurare altri strumenti diff e merge dalla riga di comando git. È possibile specificare le impostazioni dello strumento diff e merge nell'ambito globale o del repository.

  1. Scegliere Git Impostazioni dal menu Git > e quindi selezionare la visualizzazione Git Global Impostazioni. Tale vista contiene le impostazioni degli strumenti di unione e diff.

  2. Impostare le impostazioni dello strumento diff e merge sul valore desiderato e selezionare OK per salvare.

    Screenshot che mostra le impostazioni dello strumento diff e merge nella finestra di dialogo Opzioni in Visual Studio.

    In alternativa, scegliere Repository Git Impostazioni > Generale per modificare le impostazioni dello strumento diff e merge per il repository del progetto di Visual Studio corrente.

Gli strumenti diff e merge validi sono:

  • Visual Studio
  • None (predefinito)

Per configurare altre impostazioni dello strumento diff e merge, usare la riga di comando git.

Repository remoti

È possibile usare il riquadro Remotes in Git Repository Impostazioni per aggiungere, modificare o rimuovere remote per il repository. Questa impostazione corrisponde al git remote add comando . Il riquadro Remotes è disponibile solo nell'ambito del repository.

Quando si clona un repository remoto, Git assegna l'alias origin come abbreviato per l'URL del repository remoto clonato. Per praticità, è possibile aggiungere un altro alias denominato upstream per il repository da cui è stato eseguito il fork, denominato repository upstream. I passaggi seguenti descrivono come aggiungere un upstream alias.

Per aggiungere un upstream alias in Visual Studio, seguire questa procedura:

  1. Scegliere Opzioni strumenti > dalla barra dei menu per aprire la finestra Opzioni. Selezionare Repository Git controllo del codice > sorgente Impostazioni > Remote e quindi scegliere Aggiungi per aprire la finestra di dialogo Aggiungi remoto.

    Screenshot del pulsante Aggiungi nel riquadro Remotes del repository Git Impostazioni sottomenu del menu Controllo del codice sorgente in Visual Studio.

  2. Nella finestra di dialogo Aggiungi remoto aggiungere un nuovo remoto denominato upstream e immettere l'URL clone Git del repository copiato tramite fork. Scegliere quindi Salva.

    Screenshot della finestra di dialogo Aggiungi remoto in Visual Studio.

Altre impostazioni

Per visualizzare tutte le altre impostazioni di configurazione git, è possibile aprire e visualizzare i file di configurazione Git stessi oppure eseguire git config --list per visualizzare le impostazioni.


Le impostazioni seguenti gestiscono le preferenze correlate a Git in Visual Studio. È possibile visualizzare e modificare queste impostazioni solo da Visual Studio.

Per altre informazioni su come accedere alle impostazioni correlate a Git di Visual Studio, vedere Esplorare le impostazioni Git. Verrà ora illustrato come modificare ognuna di queste impostazioni correlate a Git di Visual Studio.

Percorso del repository predefinito

È possibile impostare la cartella del repository predefinita in cui Visual Studio clonerà i repository.

L'impostazione Percorso repository predefinito è disponibile solo nell'ambito globale.

  1. Scegliere Git Impostazioni dal menu Git > e quindi selezionare la visualizzazione Git Global Impostazioni. Tale vista contiene l'impostazione Percorso repository predefinito.

  2. Impostare il percorso predefinito del repository e selezionare OK per salvare.

    Screenshot che mostra il campo percorso predefinito in Visual Studio.

Chiudere le soluzioni aperte non in Git quando si apre un repository

Per impostazione predefinita, Visual Studio chiude qualsiasi soluzione o cartella aperta in un repository Git quando si passa a un repository diverso. L'impostazione Chiudi soluzioni aperte non in Git quando si apre un repository mantiene la soluzione o la cartella aperta coerente con il repository selezionato. Tuttavia, se la soluzione o la cartella non si trova all'interno di un repository, è possibile mantenere aperta la soluzione quando si cambia repository. È possibile farlo con questa impostazione.

Suggerimento

Se si associa questa impostazione a Carica automaticamente la soluzione quando si apre un repository Git, Visual Studio aprirà la soluzione per il repository Git a cui si sta passando.

Le soluzioni chiudi aperte non in Git quando si apre un'impostazione del repository sono disponibili solo nell'ambito globale.

  1. Scegliere Git Impostazioni dal menu Git > e quindi selezionare la visualizzazione Git Global Impostazioni per configurare questa impostazione.

  2. Impostare il percorso predefinito del repository e selezionare OK per salvare.

    Screenshot che mostra l'impostazione Chiudi soluzioni aperte non in Git quando si apre un repository nella finestra di dialogo Opzioni in Visual Studio.

I valori validi sono:

  • Yes: quando si passa al repository, Visual Studio chiude qualsiasi soluzione aperta.
  • No: quando si cambia repository e la soluzione o la cartella corrente non è in Git, Visual Studio manterrà aperta la soluzione o la cartella.
  • Always ask (impostazione predefinita): quando si cambia repository e la soluzione o la cartella corrente non è in Git, Visual Studio chiederà se si vuole mantenere aperta la soluzione corrente.

Abilitare il download delle immagini dell'autore da origini di terze parti

Se abilitata, Visual Studio scaricherà un'immagine dell'autore dal servizio immagini Gravatar per la visualizzazione nelle visualizzazioni commit e cronologia. Se non è stata configurata un'immagine Gravatar, il servizio immagine Gravatar restituirà automaticamente un'immagine generata in modo casuale.

Importante

Per fornire immagini di creazione nelle visualizzazioni commit e cronologia, Visual Studio crea un hash MD5 usando l'indirizzo di posta elettronica dell'autore archiviato nel repository attivo e invia tale hash a Gravatar. Se Gravatar trova un utente con un hash corrispondente, Visual Studio recupererà e visualizzerà l'immagine dell'utente. Microsoft non registra o condivide gli indirizzi di posta elettronica con Gravatar o con altre terze parti.

L'impostazione Abilita il download delle immagini dell'autore da origini di terze parti è disponibile solo nell'ambito globale.

  1. Scegliere Git Impostazioni dal menu Git > e quindi selezionare la visualizzazione Git Global Impostazioni. Tale visualizzazione contiene l'impostazione Abilita il download delle immagini dell'autore da origini di terze parti.

  2. Scegliere se abilitare il download di immagini dell'autore da origini di terze parti e selezionare OK per salvare.

    Screenshot che mostra la casella di controllo per abilitare il download delle immagini dell'autore dall'origine di terze parti nella finestra di dialogo Opzioni in Visual Studio.

Esegui il commit delle modifiche dopo il merge per impostazione predefinita

Con Le modifiche commit dopo l'unione abilitate per impostazione predefinita , Git crea automaticamente un nuovo commit nell'unione di rami.

  • Quando selezionata, tutti i git merge comandi emessi da Visual Studio vengono eseguiti con l'opzione --commit .
  • Se deselezionato, tutti i git merge comandi eseguiti da Visual Studio vengono eseguiti con le --no-commit --no-ff opzioni.

Per altre informazioni su queste opzioni di merge, vedere --commit e --no-commit e --no-ff.

L'impostazione Commit viene modificata dopo l'unione per impostazione predefinita solo nell'ambito globale.

  1. Scegliere Git Impostazioni dal menu Git > e quindi selezionare la visualizzazione Git Global Impostazioni. Tale vista contiene le modifiche commit dopo l'unione per impostazione predefinita .

  2. Scegliere se eseguire il commit delle modifiche dopo l'unione per impostazione predefinita e selezionare OK per salvare.

    Screenshot che mostra la casella di controllo per eseguire il commit delle modifiche dopo l'unione per impostazione predefinita nella finestra di dialogo Opzioni in Visual Studio.

Abilita push --force-with-lease

Con questa impostazione abilitata, è possibile eseguire il push delle modifiche che sovrascrivono funzionano in un ramo remoto, se nessun altro ha eseguito il push nel ramo remoto dall'ultimo pull.

L'opzione Abilita push --force-with-lease corrisponde al push --force-with-lease comando . Questa impostazione è disponibile solo nell'ambito globale. Per impostazione predefinita, l'opzione Abilita push --force-with-lease è disabilitata.

  1. Scegliere Git Impostazioni dal menu Git > e quindi selezionare la visualizzazione Git Global Impostazioni. Tale vista contiene l'impostazione Abilita push --force-with-lease .

  2. Scegliere se abilitare push --force-with-leasee selezionare OK per salvare.

    Screenshot che mostra la casella di controllo per abilitare push force con lease nella finestra di dialogo Opzioni in Visual Studio.

Aprire la cartella in Esplora soluzioni all'apertura di un repository Git

Quando è abilitato e si apre un repository Git in Visual Studio, Visual Studio analizzerà la cartella del repository per individuare soluzioni, CMakeLists.txt o altri file di visualizzazione e visualizzarli come elenco in Esplora soluzioni. È quindi possibile caricare una soluzione o visualizzare il contenuto di una cartella. Questa opzione è attivata per impostazione predefinita.

Se disabilitato e si apre un repository Git in Visual Studio, Visual Studio non aprirà la cartella del repository in Esplora soluzioni ed è solo un gestore di repository Git.

  1. Scegliere Git Impostazioni dal menu Git > e quindi selezionare la visualizzazione Git Global Impostazioni per configurare questa impostazione.

  2. Scegliere se abilitare Apri cartella in Esplora soluzioni all'apertura di un repository Git e selezionare OK per salvare.

    Screenshot che mostra la casella di controllo per aprire la cartella all'apertura di un repository Git nella finestra di dialogo Opzioni.

Caricare automaticamente la soluzione all'apertura di un repository Git

L'impostazione Carica automaticamente la soluzione all'apertura di un repository Git è applicabile solo se è abilitata anche l'impostazione Apri cartella in Esplora soluzioni all'apertura di un repository Git. Quando si apre un repository Git in Visual Studio e l'analisi di cartelle successiva rileva che nel repository è presente una sola soluzione, Visual Studio carica automaticamente tale soluzione. Se si disattiva questa impostazione, Esplora soluzioni visualizzerà la singola soluzione presente nel repository nell'elenco delle visualizzazioni, ma non caricherà la soluzione. Questa impostazione è disabilitata per impostazione predefinita

  1. Scegliere Git Impostazioni dal menu Git > e quindi selezionare la visualizzazione Git Global Impostazioni per configurare questa impostazione.

  2. Scegliere se abilitare Carica automaticamente la soluzione all'apertura di un repository Git e selezionare OK per salvare.

    Screenshot che mostra la casella di controllo per caricare automaticamente la soluzione all'apertura di un repository Git nella finestra di dialogo Opzioni.

Estrazione automatica dei rami con doppio clic o invio

La finestra Repository Git include un elenco di rami visualizzati in una struttura ad albero. Selezionare un ramo per cambiare il riquadro cronologia commit per visualizzare i commit per tale ramo. Per estrarre un ramo, fare clic con il pulsante destro del mouse per aprire il menu di scelta rapida e scegliere Checkout .To check out a branch, click right-click to open the context menu and choose Checkout. Con il check out automatico dei rami con doppio clic o l'impostazione Invio chiave abilitata, è possibile fare doppio clic o selezionare la chiave INVIO per controllare un ramo e visualizzarne i commit.

  1. Scegliere Git Impostazioni dal menu Git > e quindi selezionare la visualizzazione Git Global Impostazioni per configurare questa impostazione.

  2. Scegliere se abilitare Estrazione automatica dei rami con doppio clic o invio e selezionare OK per salvare.

    Screenshot che mostra la casella di controllo per l'estrazione dei rami con doppio clic o Invio chiave nella finestra di dialogo Opzioni.

Modificare i file di attributi e ignorare Git

Visual Studio offre un modo rapido per aggiungere o modificare i file gitignore e gitattributes nella radice del repository.

L'opzione per aggiungere o modificare un gitignore file o gitattributes è disponibile solo nell'ambito del repository.

  1. Dal menu Git scegliere Git > Impostazioni e scegliere Git Repository Impostazioni > visualizzazione Generale. Tale vista contiene opzioni per modificare o gitattributes filegitignore.

  2. Scegliere Modifica per aprire il file ignore o attribute in una finestra dell'editor di Visual Studio.

    Screenshot che mostra il pulsante Modifica per i file ignore o attribute in Visual Studio.

Per informazioni su come configurare .gitignore e .gitattributes file, vedere gitignore e gitattributes.

Passaggi successivi