Começar a usar o Git no Subsistema do Windows para Linux

O Git é o sistema de controle de versão mais usado. Com o Git, você pode acompanhar as alterações feitas nos arquivos, para que tenha um registro do que foi feito e tenha a capacidade de reverter para versões anteriores dos arquivos, se necessário. O Git também facilita a colaboração, permitindo que as alterações de várias pessoas sejam mescladas em uma única fonte.

O Git pode ser instalado no Windows AND no WSL

Uma consideração importante: ao habilitar o WSL e instalar uma distribuição do Linux, você está instalando um novo sistema de arquivos, separado do Windows NTFS C:\ unidade em seu computador. No Linux, as unidades não receberão letras. Eles receberão pontos de montagem. A raiz do sistema de arquivos é o ponto de montagem da sua partição raiz, ou / pasta, no caso do WSL. Nem tudo em / é a mesma unidade. Por exemplo, em meu laptop, instalei duas versões do Ubuntu (20.04 e 18.04), bem como o Debian. Se eu abrir essas distribuições, selecione o diretório home com o comando e, em seguida, insira o comando , Windows Explorador de Arquivos abrirá e mostrará o caminho do diretório cd ~explorer.exe . para essa distribuição.

Distribuição do Linux Windows caminho para acessar a pasta base
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

Dica

Se você estiver buscando acessar o diretório de arquivos Windows de sua linha de comando de distribuição WSL, em vez de , o diretório será acessado usando , porque a distribuição do Linux visualiza seu sistema de arquivos Windows como uma unidade C:\Users\username/mnt/c/Users/username montada.

Você precisará instalar o Git em cada sistema de arquivos com o que pretende usá-lo.

Showing Git versions by distro

Instalando o Git

O Git já vem instalado com a maioria das distribuições Subsistema do Windows para Linux, no entanto, talvez você queira atualizar para a versão mais recente. Você também precisará configurar o arquivo de configuração do Git.

Para instalar o Git, consulte o site Download do Git para Linux. Cada distribuição do Linux tem seu próprio gerenciador de pacotes e o comando install.

Para a versão estável mais recente do Git no Ubuntu/Debian, digite o comando:

sudo apt-get install git

Observação

Talvez você também queira instalar o Git para Windows caso ainda não tenha feito isso.

Configuração do arquivo de configuração do Git

Para configurar o arquivo de configuração do Git, abra uma linha de comando para a distribuição na qual você está trabalhando e de definido seu nome com este comando (substituindo "Seu Nome" pelo nome de usuário preferencial):

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

De definir seu email com este comando (substituindo youremail@domain.com " " pelo email de sua preferência):

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

Dica

Se você ainda não tiver uma conta GitHub, inscreva-se parauma no GitHub . Se você nunca trabalhou com o Git antes, os Guias do GitHub podem ajudar você a começar a usá-lo. Se você precisar editar sua configuração do Git, poderá fazer isso com um editor de texto integrado como nano: nano ~/.gitconfig .

Recomendamos que você proteja sua conta com 2FA (autenticação de dois fatores).

Configuração Gerenciador de Credenciais Git

O Git Gerenciador de Credenciais (GCM) permite autenticar um servidor Git remoto, mesmo se você tiver um padrão de autenticação complexo, como autenticação de dois fatores, Azure Active Directory ou usar URLs remotas SSH que exigem uma senha de chave SSH para cada push do Git. O GCM integra-se ao fluxo de autenticação para serviços como GitHub e, depois de autenticado no provedor de hospedagem, solicita um novo token de autenticação. Em seguida, ele armazena o token com segurança no Windows Gerenciador de Credenciais. Após a primeira vez, você pode usar o Git para se falar com seu provedor de hospedagem sem precisar se autenticar. Ele só acessará o token no Gerenciador de Credenciais do Windows.

Para configurar o GCM para uso com uma distribuição WSL, abra sua distribuição e insira este comando:

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

Se você pretende trabalhar com o Azure Repos, algumas configurações adicionais serão necessárias:

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

Agora qualquer operação git que você executar em sua distribuição WSL usará o GCM. Se você já tiver credenciais armazenadas em cache para um host, elas serão acessadas do Gerenciador de Credenciais. Caso contrário, você receberá uma resposta em uma caixa de diálogo solicitando suas credenciais, mesmo que esteja em um console do Linux.

Observação

Se você estiver usando uma chave GPG para segurança de assinatura de código, talvez seja necessário associar sua chave GPG ao GitHub email.

Adicionando um arquivo Git Ignore

É recomendável adicionar um arquivo .gitignore aos seus projetos. GitHub oferece uma coleção de modelos .gitignore úteis com configurações de arquivo .gitignore recomendadas organizadas de acordo com seu caso de uso. Por exemplo, aqui está GitHub do gitignore padrão para um Node.js projeto.

Se você optar por criar um repositório usando o site do GitHub, haverá caixas de seleção disponíveis para inicializar seu repositório com um arquivo LEIAME, arquivo .gitignore configurada para seu tipo de projeto específico e opções para adicionar uma licença, se você precisar de uma.

Git e VS Code

Visual Studio Code vem com suporte integrado para Git, incluindo uma guia de controle do código-fonte que mostrará suas alterações e manipulará uma variedade de comandos git para você. Saiba mais sobre VS Code suporte ao Git do .

Terminações de linha do Git

Se você estiver trabalhando com a mesma pasta de repositório entre Windows, WSL ou um contêiner, certifique-se de configurar terminações de linha consistentes.

Como Windows e Linux usam terminações de linha padrão diferentes, o Git pode relatar um grande número de arquivos modificados que não têm diferenças além de suas terminações de linha. Para impedir que isso aconteça, você pode desabilitar a conversão de final de linha usando um arquivo ou .gitattributes globalmente no lado Windows. Consulte este documento VS Code sobre como resolver problemas de término de linha do Git.

Recursos adicionais