Configurações e preferências do Git no Visual Studio
No Visual Studio, você pode definir e exibir configurações e preferências comuns do Git, como seu nome e endereço de email, suas ferramentas de comparação e mesclagem preferenciais e muito mais. Essas configurações e preferências podem ser exibidas e configuradas na caixa de diálogo Opções na página Configurações Globais do Git (aplica-se a todos os seus repositórios) ou na página Configurações do Repositório Git (aplica-se ao repositório atual).
Você pode definir dois tipos de configurações:
- Configurações do Git – as configurações nesta seção correspondem às configurações do Git salvas nos arquivos de configuração do Git. Essas configurações podem ser exibidas e modificadas no Visual Studio, mas são gerenciadas por arquivos de configuração do Git.
- Configurações do Visual Studio – as configurações nesta seção definem as configurações e preferências relacionadas ao Git gerenciadas pelo Visual Studio.
Como definir as configurações
Para definir as configurações do Git no Visual Studio, escolha Configurações no menu do Git de nível superior.
Escolha Configurações Globais do Git ou Configurações do Repositório Git para exibir e definir configurações de nível global ou de nível de repositório.
Você pode definir várias configurações comuns do Git, conforme descrito nas seções a seguir deste artigo. Depois de definir as configurações desejadas, selecione OK para salvar as configurações atualizadas.
Configurações do Git
Você também pode definir e verificar algumas das configurações mais comuns do Git. Você pode exibir e modificar as configurações a seguir no Visual Studio, mesmo que elas sejam gerenciadas por arquivos de configuração do Git.
- Nome e email
- Remover os branches remotos durante o fetch
- Trocar a base do branch local durante o pull
- Provedor de rede de criptografia
- Auxiliar de credenciais
- Ferramentas de comparação e mesclagem
- Arquivos Git
- Branches remotos
- Outras configurações
Observação
As configurações do Git definidas nas Configurações Globais do Visual Studio correspondem às configurações no arquivo de configuração específico do usuário do Git, enquanto as configurações em Configurações do Repositório correspondem às configurações no arquivo de configuração específico do repositório. Para obter mais informações sobre a configuração do Git, confira o capítulo Pro Git sobre como personalizar o Git, a documentação do git-config e a referência do Git Pro nos arquivos de configuração. Para definir as configurações do Git não expostas no Visual Studio, use o comando git config
para gravar um valor nos arquivos de configuração: git config [--local|--global|--system] section.key value
.
Nome e email
O nome e o email fornecidos serão usados como informações de committer para qualquer commit que você fizer. Essa configuração está disponível em escopos globais e de repositório e corresponde às configurações de git config
user.name e user.email.
No menu Git, acesse Configurações. Para definir o nome de usuário e o email no nível global, acesse Configurações Globais do Git; para definir o nome de usuário e o email no nível do repositório, acesse Configurações do Repositório Git.
Forneça o nome de usuário e o email e escolha OK para salvar.
Remover os branches remotos durante o fetch
A remoção remove branches de acompanhamento locais que não existem mais remotamente e ajuda você a manter sua lista de branches limpa e atualizada. Essa configuração está disponível em escopos globais e de repositório e corresponde à configuração git config
fetch.prune.
Recomendamos definir essa opção como True no nível global. As configurações válidas são, da seguinte maneira:
- True (recomendado)
- Falso
- Não definido (padrão)
Veja como alterar as configurações:
No menu Git, acesse Configurações. Acesse Configurações Globais do Git para configurar essa opção no nível global; acesse Configurações do Repositório Git para configurar essa opção no nível do repositório.
Defina Remover branches remotos durante o fetch como Verdadeiro (recomendado). Selecione OK para salvar.
Trocar a base do branch local durante o pull
A troca de base reserva as alterações feitas por commits no branch atual que não estão no branch upstream, redefine o branch atual para o branch upstream e aplica as alterações que foram reservadas. Essa configuração está disponível em escopos globais e de repositório e corresponde à configuração git config
pull.rebase. As configurações válidas são, da seguinte maneira:
Verdadeiro: trocar a base do branch atual na parte superior do branch upstream após o fetch.
Falso: mesclar o branch atual no branch upstream.
Não definido (padrão): a menos que especificado em outros arquivos de configuração, mescle o branch atual no branch upstream.
Interativo: trocar a base no modo interativo.
Mesclagens: trocar a base sem nivelar commits de mesclagem criados localmente.
Observação
No Visual Studio 2022 versão 17.2, alteramos a configuração "Preservar" para "Mesclagens" para corresponder a uma atualização recente do Git. Portanto, se você estiver usando uma versão anterior do Visual Studio com ferramentas do Git, sua interface do usuário poderá dizer "Preservar" em vez de "Mesclagens". No entanto, a funcionalidade permanece a mesma.
Veja como alterar as configurações:
No menu Git, acesse Configurações. Acesse Configurações Globais do Git para configurar essa opção no nível global; acesse Configurações do Repositório Git para configurar essa opção no nível do repositório.
Defina Trocar base de branch local ao efetuar pull para a configuração desejada e selecione OK para salvar.
Não é possível configurar pull.rebase
para Interativa no Visual Studio. O Visual Studio não tem suporte à troca de base interativa.
Para configurar pull.rebase
para usar o modo interativo, use a linha de comando.
Provedor de rede de criptografia
O provedor de rede criptográfica é uma configuração do Git no escopo global que configura qual back-end TLS/SSL usar em runtime e corresponde à configuração git config
http.sslBackend. Os valores são os seguintes:
- OpenSSL: use OpenSSL para protocolos TLS e SSL.
- Canal Seguro: use Canal Seguro (schannel) para protocolos TLS e SSL. O Schannel é a solução nativa do Windows, acessando a Windows Credential Store, permitindo assim o gerenciamento de certificados em toda a empresa.
- Não definido (padrão): se essa configuração não estiver definida, OpenSSL será o padrão.
Veja como alterar as configurações:
No menu Git, acesse Configurações. Acesse Configurações Globais do Git para definir essa configuração.
Defina Provedor de rede criptográfica com o valor desejado e selecione OK para salvar.
Auxiliar de credenciais
Quando o Visual Studio executa uma operação remota do Git, o ponto de extremidade remoto pode rejeitar a solicitação porque ela exige que as credenciais sejam fornecidas com a solicitação. Nesse momento, o Git invoca um auxiliar de credenciais, que retornará as credenciais necessárias para executar a operação e, em seguida, tentará a solicitação novamente. O auxiliar de credenciais usado corresponde à configuração git config
credential.helper. Ele está disponível no escopo global com os seguintes valores:
- GCM para Windows: use o Gerenciador de Credenciais do Git para Windows como o auxiliar.
- GCM Core: use o Gerenciador de Credenciais do Git Core como o auxiliar.
- Não definido (padrão): se essa configuração não estiver definida, o auxiliar de credenciais definido na configuração do sistema será usado. No Git para Windows 2.29 e versões posteriores, o auxiliar de credenciais padrão é o GCM Core.
Veja como alterar as configurações:
No menu Git, acesse Configurações. Acesse Configurações Globais do Git para definir essa configuração.
Defina Auxiliar de credenciais como o valor desejado e selecione OK para salvar.
Ferramentas de comparação e mesclagem
O Git mostrará conflitos de diferenças e mesclagem em suas ferramentas preferenciais. As configurações nesta seção correspondem às configurações git config
diff.tool e merge.tool. Você pode configurar o Git para usar o Visual Studio como sua ferramenta de mesclagem ou comparação em Configurações Globais do Git e Configurações do Repositório Git selecionando Usar o Visual Studio. Para configurar outras ferramentas de comparação e mesclagem, use git config
com a opção diff.tool ou merge.tool.
Arquivos Git
Você pode usar a seção Arquivos Git no escopo Configurações do Repositório Git para exibir e editar os arquivos gitignore e gitattributes para seu repositório.
Remotos
Você pode usar o painel Remotos em Configurações do Repositório Git para configurar os remotos para seu repositório. Essa configuração corresponde ao comando git remote e permite adicionar, editar ou remover remotos.
Outras configurações
Para exibir todas as outras definições de configuração do Git, você pode abrir e exibir os arquivos de configuração propriamente ditos ou pode executar git config --list
para exibir as configurações.
Configurações do Visual Studio
As configurações a seguir gerenciam as preferências relacionadas ao Git no Visual Studio e são gerenciadas pelo Visual Studio em vez de arquivos de configuração do Git. Todas as configurações nesta seção são definidas na página Configurações Globais do Git.
- Local padrão
- Fechar as soluções abertas que não estão sob o Git ao abrir um repositório
- Habilitar o download de imagens de autor de fontes de terceiros
- Confirmar as alterações após a mesclagem por padrão
- Habilitar push --force
- Abrir pasta no Gerenciador de Soluções ao abrir um repositório Git
- Carregar a solução automaticamente ao abrir um Repositório do Git
- Fazer check-out de branches automaticamente com um clique duplo ou usando a tecla Enter
Local padrão
O local padrão configura a pasta padrão na qual os repositórios são clonados.
Fechar as soluções abertas que não estão sob o Git ao abrir um repositório
Por padrão, o Visual Studio fecha qualquer solução ou pasta aberta quando você alterna para outro repositório. Ao fazer isso, ele também poderá carregar a solução ou pasta do novo repositório com base na sua escolha entre Abrir pasta no Gerenciador de Soluções ao abrir um repositório Git e Carregar automaticamente a solução ao abrir um repositório Git. Isso mantém a consistência entre o código aberto e o repositório aberto. No entanto, se sua solução não estiver na mesma raiz de pasta que o repositório, convém manter a solução aberta ao alternar para o repositório correspondente. Você pode fazer isso com esta configuração. Os valores são os seguintes:
Sim: quando um repositório é aberto, a solução aberta no momento é sempre fechada
Não: quando um repositório é aberto, o Visual Studio executa uma verificação sobre se a solução atual está no Git. Se não estiver, a solução permanecerá aberta.
Sempre pergunte (padrão): quando isso estiver definido, você poderá fazer uma escolha por meio de uma caixa de diálogo por repositório aberto, quer queira manter a solução atual aberta ou fechá-la.
Habilitar o download de imagens de autor de fontes de terceiros
Habilitar o download de imagens de autor de fontes de terceiros é uma configuração específica do Visual Studio no escopo global. Quando marcada, as imagens de autor são baixadas do serviço de imagem Gravatar, se disponíveis, e exibidas nas exibições de commit e histórico.
Importante
Para fornecer imagens de autor nos modos de exibição Commit e Histórico, a ferramenta cria um hash MD5 para os endereços de email do autor armazenados no repositório ativo. Esse hash é enviado ao Gravatar para encontrar um valor de hash correspondente para os usuários que se inscreveram anteriormente no serviço. Se uma correspondência for encontrada, a imagem do usuário será recuperada do serviço e exibida no Visual Studio. Os usuários que não configuraram o serviço retornarão uma imagem gerada aleatoriamente. Observe que os endereços de email não são gravados pelo Visual Studio, nem nunca são compartilhados com Gravatar ou com qualquer outro terceiro.
Confirmar as alterações após a mesclagem por padrão
Quando Confirmar alterações após a mesclagem por padrão estiver habilitada, o Git criará automaticamente um commit quando um branch for mesclado com o branch atual.
- Quando marcada, os comandos
git merge
emitidos pelo Visual Studio são executados com a opção--commit
. - Quando desmarcada, os comandos
git merge
emitidos pelo Visual Studio são executados com as opções--no-commit --no-ff
.
Para obter mais informações sobre essas opções, confira --commit e --no-commit e --no-ff.
Habilitar push --force-with-lease
Quando habilitada, essa configuração permite que você efetue push --force-with-lease
de dentro do Visual Studio. Por padrão, Habilitar push --force-with-lease está desabilitado.
Para obter mais informações, confira push --force-with-lease.
Abrir pasta no Gerenciador de Soluções ao abrir um repositório Git
Quando você usa o Visual Studio para abrir ou alternar para um repositório Git, o Visual Studio carrega o conteúdo do Git para que você possa exibir alterações, commits, branches e gerenciar seu repositório de dentro do IDE. Além disso, o Visual Studio também carregará o código do repositório no Gerenciador de Soluções. O Visual Studio examinará a pasta do repositório em busca de soluções, CMakeLists.txt ou quaisquer outros arquivos de exibição que ele reconheça e os exiba como uma lista no Gerenciador de Soluções. Desse ponto em diante, você pode selecionar uma solução a ser carregada ou a pasta para exibir o conteúdo do diretório. Quando você desativar essa caixa de seleção, o Visual Studio não abrirá a pasta do repositório no Gerenciador de Soluções. Isso basicamente permitirá que você abra o Visual Studio apenas como um gerenciador de repositório Git. Esta configuração está ativada por padrão.
Carregar a solução automaticamente ao abrir um repositório Git
Essa configuração é aplicável somente quando a configuração Abrir pasta no Gerenciador de Soluções ao abrir um repositório Git está ativada. Quando você abre um repositório Git no Visual Studio e a verificação de pasta subsequente detecta que há apenas uma solução presente no repositório, o Visual Studio carrega automaticamente essa solução. Se você desativar a configuração, o Gerenciador de Soluções exibirá a única solução presente no repositório na lista de exibições. No entanto, ele não carregará a solução. Por padrão, esta configuração é desativada.
Fazer check-out de branches automaticamente com um clique duplo ou usando a tecla Enter
A janela Repositório Git tem uma lista de branches exibidos em uma estrutura de árvore. A seleção de apenas um branch alternará do painel histórico de commits para a exibição dos commits do branch selecionado. Para fazer check-out de um branch, você poderá clicar com o botão direito do mouse para abrir o menu de contexto e selecionar Fazer check-out. Se você ativar essa configuração, clicar duas vezes ou pressionar a tecla Enter fará check-out do branch e exibirá os respectivos commits.
Conteúdo relacionado
Importante
Se você tiver uma sugestão para nós, informe-nos. Agradecemos a oportunidade de nos envolvermos com você em decisões de design por meio do portal do Developer Community.
- Vídeo Introdução ao Git no Visual Studio no YouTube
- Postagem no blog Aumento da produtividade com o Git no Visual Studio
- caixa de diálogo Opções