Introduzione all'uso di Git sottosistema Windows per Linux

Git è il sistema di controllo della versione più comunemente usato. Con Git è possibile tenere traccia delle modifiche apportate ai file, in modo da avere un record di ciò che è stato fatto e avere la possibilità di ripristinare le versioni precedenti dei file, se necessario. Git semplifica anche la collaborazione, consentendo il merge delle modifiche di più persone in un'unica origine.

Git può essere installato in Windows E in WSL

Una considerazione importante: quando si abilita WSL e si installa una distribuzione Linux, si installa un nuovo file system, separato dal Windows NTFS C:\ nel computer. In Linux non vengono fornite lettere alle unità. Vengono dati punti di montaggio. La radice del file system è il punto di montaggio della partizione radice, o / cartella, nel caso di WSL. Non tutto ciò che / si trova sotto è la stessa unità. Ad esempio, nel computer portatile sono installate due versioni di Ubuntu (20.04 e 18.04), nonché Debian. Se si aprono queste distribuzioni, selezionare la home directory con il comando , quindi immettere il comando , Windows Esplora file verrà aperto e verrà visualizzato il percorso della directory per cd ~ explorer.exe . la distribuzione.

Distribuzione Linux Windows Percorso per accedere alla home directory
Ubuntu 20.04 \\wsl$\Ubuntu-20.04\home\username
Ubuntu 18.04 \\wsl$\Ubuntu-18.04\home\username
Debian \\wsl$\Debian\home\username
Windows PowerShell C:\Users\username

Suggerimento

Se si sta cercando di accedere alla directory del file Windows dalla riga di comando di distribuzione WSL, invece di , si accede alla directory usando , perché la distribuzione Linux visualizza il Windows file system come unità C:\Users\username /mnt/c/Users/username montata.

È necessario installare Git in ogni file system con cui si intende usarlo.

Visualizzazione delle versioni di Git in base alla distribuzione

Installazione di Git

Git è già installato con la maggior parte delle distribuzioni sottosistema Windows per Linux, tuttavia è possibile eseguire l'aggiornamento alla versione più recente. Sarà anche necessario configurare il file di configurazione git.

Per installare Git, vedere il sito Git Download per Linux. Ogni distribuzione Linux ha il proprio comando di gestione pacchetti e installazione.

Per la versione stabile più recente di Git in Ubuntu/Debian, immettere il comando:

sudo apt-get install git

Nota

È anche possibile installare Git per Windows se non è già stato fatto.

Configurazione del file di configurazione git

Per configurare il file di configurazione Git, aprire una riga di comando per la distribuzione in uso e impostare il nome con questo comando (sostituendo "Your Name" con il nome utente preferito):

git config --global user.name "Your Name"

Impostare il messaggio di posta elettronica con questo comando (sostituendo " youremail@domain.com " con il messaggio di posta elettronica preferito):

git config --global user.email "youremail@domain.com"

Suggerimento

Se non si ha ancora un account GitHub, è possibile registrarsi per un account in GitHub. Se non si è mai usato Git, consultare le guide di GitHub per iniziare. Se è necessario modificare la configurazione di Git, è possibile farlo con un editor di testo predefinito come nano: nano ~/.gitconfig .

È consigliabile proteggere l'account con l'autenticazione a due fattori (2FA).

Configurazione Gestione credenziali Git

Git Gestione credenziali (GCM) Core consente di autenticare un server Git remoto, anche se si dispone di un modello di autenticazione complesso come l'autenticazione a due fattori, Azure Active Directory o l'uso di URL remoti SSH che richiedono una password della chiave SSH per ogni push Git. GCM Core si integra nel flusso di autenticazione per servizi come GitHub e, dopo l'autenticazione al provider di hosting, richiede un nuovo token di autenticazione. Archivia quindi il token in modo sicuro nel Windows Gestione credenziali . Dopo la prima volta, è possibile usare Git per parlare con il provider di hosting senza dover eseguire nuovamente l'autenticazione. Verrà semplicemente eseguito l'accesso al token in Gestione credenziali di Windows.

Per configurare GCM Core per l'uso con una distribuzione WSL, aprire la distribuzione e immettere questo comando:

git config --global credential.helper "/mnt/c/Program\ Files/Git/mingw64/libexec/git-core/git-credential-manager-core.exe"

Se si prevede di usare Azure Repos, è necessaria una configurazione aggiuntiva:

git config --global credential.https://dev.azure.com.useHttpPath true

A questo punto, qualsiasi operazione Git eseguita all'interno della distribuzione WSL userà GCM Core. Se nella cache hai già memorizzato le credenziali per un host, quest'ultimo potrà accedere alle credenziali da Gestione credenziali. In caso contrario, riceverai una risposta della finestra di dialogo con la richiesta delle credenziali anche se ti trovi in una console Linux.

Nota

Se si usa una chiave GPG per la sicurezza della firma del codice, potrebbe essere necessario associare la chiave GPG all'indirizzo GitHub posta elettronica.

Aggiunta di un file Git Ignore

È consigliabile aggiungere un file gitignore ai progetti. GitHub offre una raccolta di modelli .gitignore utili con configurazioni di file gitignore consigliate organizzate in base al caso d'uso. Ad esempio, ecco il GitHub gitignore predefinitodi un progetto Node.js.

Se si sceglie di creare un nuovo repository usando il sito Web di GitHub ,sono disponibili caselle di controllo per inizializzare il repository con un file README, un file con estensione gitignore configurato per il tipo di progetto specifico e le opzioni per aggiungere una licenza, se necessario.

Git e VS Code

Visual Studio Code include il supporto incorporato per Git, inclusa una scheda del controllo del codice sorgente che mostra le modifiche e gestisce un'ampia gamma di comandi Git. Altre informazioni sul supporto git VS Code di VS Code.

Terminazioni riga Git

Se si utilizza la stessa cartella del repository tra Windows, WSL o un contenitore, assicurarsi di configurare terminazioni di riga coerenti.

Poiché Windows e Linux usano terminazioni di riga predefinite diverse, Git può segnalare un numero elevato di file modificati che non hanno differenze a parte le terminazioni di riga. Per evitare questo problema, è possibile disabilitare la conversione di terminazione di riga usando un file o a livello globale .gitattributes sul Windows locale. Vedere questo documento VS Code sulla risoluzione dei problemi di terminazione della riga git.

Risorse aggiuntive