Comecei a usar o Visual Studio Code e estava tentando salvar meu projeto de teste no GitHub , mas o Visual Studio Code sempre solicita minhas credenciais do GitHub .
Eu instalei no meu PC o GitHub Desktop e também o Git , já executei:
git config --global credential.helper wincred
mas ainda assim o Visual Studio Code está solicitando as credenciais.
Qualquer ajuda?
aqui está o meu arquivo .gitconfig, localizado na pasta de perfil do usuário:
[filter "lfs"]
clean = git-lfs clean %f
smudge = git-lfs smudge %f
required = true
[user]
name = ddieppa
[user]
email = [email protected]
[credential]
helper = wincred
Aqui estão as janelas pop-up solicitando as credenciais:
Entro minhas credenciais do GitHub no pop-up, mas ainda recebo esse erro na janela de saída do Git no Visual Studio Code :
remote: Anonymous access to ddieppa/LineOfBizApp.git denied.
fatal: Authentication failed for 'https://github.com/ddieppa/LineOfBizApp.git/'
git
visual-studio
github
visual-studio-code
ddieppa
fonte
fonte
Respostas:
Última atualização: 05 de março de 2019
Após 98 votos, acho que preciso dar uma resposta verdadeira com a explicação.
Por que o código VS solicita uma senha? Como o VSCode executa o recurso de busca automática, enquanto o servidor git não possui nenhuma informação para autorizar sua identidade. Isso acontece quando:
https
um URL remoto. Sim! Esse tipo de controle remoto sempre perguntará a você o tempo todo. Sem exceções aqui! (Você pode fazer um truque temporário para armazenar em cache a autorização como a solução abaixo, mas isso não é recomendado.)ssl
um URL remoto, MAS você não copiou sua chave pública ssh no servidor git. Usessh-keygen
para gerar sua chave e copiá-la para o servidor git. Feito! Essa solução também ajuda você a nunca redigitar a senha no terminal novamente. Veja uma boa instrução por @Fnatical aqui para a resposta.A parte atualizada no final desta resposta realmente não ajuda em nada. (Na verdade, você fica estagnado em seu fluxo de trabalho.) Ele apenas interrompe as coisas que acontecem no VSCode e move essas ocorrências para o terminal.
Desculpe se esta resposta ruim o afetou por muito, muito tempo.
-
a resposta original (ruim)
Encontrei a solução no documento VSCode :
Portanto, ative o auxiliar de credenciais para que o Git salve sua senha na memória por algum tempo. Por padrão, o Git armazenará sua senha em cache por 15 minutos.
No Terminal, digite o seguinte:
Para alterar o tempo limite padrão do cache de senha, digite o seguinte:
UPDATE (Se a resposta original não funcionar)
Instalei o VS Code e a mesma configuração acima, mas como o @ddieppa disse, não funcionou para mim também. Então, tentei encontrar uma opção na configuração do usuário e vi "git.autofetch" = true, agora defina como false! O código VS não é mais necessário para inserir a senha repetidamente novamente!
No menu, clique em Arquivo / Preferências / Configuração do usuário e digite:
Coloque suas configurações neste arquivo para substituir as configurações padrão
fonte
git config --global credential.helper cache
. Dê uma olhada em git-scm.com/book/gr/v2/Git-Tools-Credential-Storage para obter mais detalhes.Você deve poder definir suas credenciais assim:
git remote set-url origin https://<USERNAME>:<PASSWORD>@bitbucket.org/path/to/repo.git
Você pode obter o URL remoto assim:
git config --get remote.origin.url
fonte
Isso tem funcionado para mim:
1. Defina o credencial para armazenar
$ git config --global credential.helper store
2. em seguida, verifique se você deseja:
$ git config --global credential.helper store
Exemplo simples ao usar o git bash citado aqui (funciona apenas para repo atual, use
--global
para todos os repos)Também funcionará para o VS Code.
Exemplo mais detalhado e uso avançado aqui .
Nota: Nome de usuário e senhas não são criptografados e armazenados em formato de texto sem formatação, portanto, use-os apenas no seu computador pessoal.
fonte
store
fez isso.https
parassh
e use as teclas de SSH como uma alternativa.As etapas a seguir mostram como:
** Gerar chaves SSH sem uma senha é imprudente se seu trabalho for particularmente sensível.
OS - Fedora 28 | Editor - Código VS v1.23.0 | Repositório - Git
Gere chaves SSH:
ssh-keygen -t rsa -C "[email protected]"
Depois de concluir as etapas acima, o local da sua chave pública é mostrado na janela do terminal. Se o usuário atualmente conectado for 'bob', o local da sua chave pública seria /home/bob/.ssh/id_rsa.pub
Copie e importe a chave pública para o GitHub:
cat /home/bob/.ssh/id_rsa.pub
Copie toda a chave pública que agora é exibida na janela do seu terminal para a área de transferência
Confirme as etapas acima:
ssh -T [email protected]
yes
Oi ! Você se autenticou com sucesso, mas o GitHub não fornece acesso ao shell.
Primeiro confirme / envie sem precisar digitar um nome de usuário / senha: -
touch test.txt
git add test.txt
git commit
- abre o editor, insira uma mensagem e salve o arquivo. Se o vi for seu editor, pressionei
quando o arquivo abrir, digite uma mensagem, pressione esc e, em seguida, digite:x
para salvar as alterações.git push
O único soluço que você pode encontrar é quando tenta fazer o SSH no GitHub. Este link fornecerá assistência -
Caçada feliz!
fonte
Tente instalar o " Git Credential Manager para Windows " (e siga as instruções para configurar o gerenciador de credenciais ).
Quando necessário em um aplicativo usando Git (por exemplo, código VS), ele " magicamente " abre a caixa de diálogo necessária para a entrada de credencial do Visual Studio Team Services.
fonte
ssh-agent
já estou correndo . Mas o VS Code parece ignorar isso no Linux.Tudo o que eu precisava fazer era executar este comando:
git config --global credential.helper wincred
Em seguida, fui solicitada a senha duas vezes.
Da próxima vez, funcionou sem solicitar a senha.
fonte
store
vez dewincred
.git config --global credential.helper 'cache --timeout==1209600'
, durar 2 semanas, em vez dos 15 minutos padrão. Fonte: help.github.com/en/github/using-git/…store
o armazenará permanentemente no diretório disco. Além disso, meu comentário anterior tem um erro: não use==
, use=
. Tarde demais para editar.Use ssh em vez de http / https.
Você precisará definir chaves ssh na sua máquina local, enviá-las para o servidor git e substituir o formulário de URL
http://
para,git://
e você não precisará mais usar senhas.Se você não pode usar o ssh, adicione isso à sua configuração:
documentos estão aqui .
Usando a chave ssh no github
Simplesmente siga estas etapas e você configurará sua chave ssh rapidamente:
Gere uma nova chave ssh (ou pule esta etapa se você já tiver uma chave)
ssh-keygen -t rsa -C "your@email"
Depois de definir sua chave no
home/.ssh
diretório (ouUsers/<your user>.ssh
no Windows), abra-a e copie o conteúdoComo adicionar a tecla sh à conta do github?
SSH keys
Add ssh key
E você está pronto para ir :-)
fonte
Em geral, você pode usar os recursos internos de armazenamento de credenciais:
git config --global credential.helper store
Ou, se você estiver no Windows, poderá usar o sistema de credenciais deles:
git config --global credential.helper wincred
Ou, se você estiver no MacOS, poderá usar o sistema de credenciais deles:
git config --global credential.helper osxkeychain
A primeira solução é ideal na maioria das situações.
fonte
Autenticação Git automática . Das notas da versão v1.45 :
fonte
askpass = /usr/bin/ksshaskpass
no meu.gitconfig
e, como resultado, eu recebia o nome de usuário e a senha sempre solicitados. Isso provavelmente será mais votado como a versão 1.45 em mais máquinas.Para o Windows 10: acesse o painel de controle / Gerenciador de credenciais / Credencial do Windows -> clique no link git, -> editar -> atualize para a nova senha. Isso deve funcionar
fonte
Use uma chave SSH sem uma senha.
Talvez isso seja óbvio para alguns (não era para mim). Também não resolve o problema se você precisar absolutamente de uma senha, mas esse foi um compromisso decente na minha situação no Mac.
fonte
Depois de brigar com algo assim por um tempo, acho que encontrei uma boa solução, especialmente ao ter várias contas no GitHub e no BitBucket. No entanto, para o VSCode, ele acabou sendo iniciado a partir de um terminal Git Bash, de modo que herdou as variáveis de ambiente da sessão bash e soube qual agente ssh olhar.
Percebo que este é um post antigo, mas ainda lutei muito para encontrar um lugar para obter as informações necessárias. Além disso, desde 2017, o ssh-agent pode solicitar uma senha apenas quando você tenta acessar um repo.
Coloquei minhas descobertas aqui se alguém estiver interessado:
fonte
Após esse artigo :
Você pode apenas configurar o GIT_SSH env. var. para o programa plink.exe do Putty. (Em seguida, use o pageant.exe como um agente de autenticação)
fonte
Resolva o problema seguindo as etapas.
Os softwares desinstalados Vscode e git e reinstalaram o mesmo. O URL do clone do repositório git foi alterado de ssh para https.
fonte
Eu tive um problema semelhante no Visual Studio Code.
Resolvi alterando o URL remoto para https . (no arquivo .git / config)
e também
puxado novamente, o pop-up de credenciais do Windows saiu, os problemas resolvidos.
fonte
Para mim, configurei meu repositório remoto com uma chave SSH, mas o git não pôde encontrá-los porque a variável de ambiente HOMEDRIVE estava sendo automaticamente definida como um compartilhamento de rede devido à política de domínio da minha empresa. Alterar essa variável de ambiente no meu shell antes do lançamento
code .
fez com que o VSCode herdasse a variável de ambiente correta e viola, sem mais erros de conexão na janela de saída do git.Agora só preciso descobrir como substituir a política de domínio, para que o HOMEDRIVE esteja sempre apontando para o meu
c:\users\marvhen
diretório local , que é o local padrão para o.ssh
diretório.fonte
Consegui parar isso executando as seguintes etapas.
cd "C:\Program Files\Git\mingw64\libexec\git-core"
seguido porgit-credential-manager.exe uninstall
git config --global credential.helper wincred
NOTA: Eu estava usando um token de acesso pessoal como minha senha.
fonte
Resolvi um problema semelhante de uma maneira simples:
git pull origin master
. Substitua 'origem' pelo seu nome RemotoIsso é tudo. Eu resolvi o problema
fonte
além de adicionar as entradas de configuração ssh acima
se janelas
no PowerShell agora o código vs não deve solicitar ...
fonte
para o windows 10, pressione a tecla windows do tipo cred e você deverá ver "Credential Manager" no painel de controle, clique para abrir e remova as credenciais em cache relacionadas e tente novamente. Ele solicitará a senha de identificação de usuário e a senha correta. .
Aconteceu comigo quando mudei minha senha de rede
fonte
Eu costumo executar este comando simples para alterar o URL remoto do git de https para ssh
fonte