Eu tenho o seguinte problema quando tento extrair código usando git Bash no Windows:
fatal: could not read Username for 'https://github.com': No such file or directory
Já tentei implementar a solução aceita fornecida aqui:
... mas o problema persiste. Depois de adicionar / remover a origem, ainda recebo o mesmo erro.
git config --global user.name "Your Name Here"
Respostas:
Siga as etapas para configurar as chaves SSH aqui: https://help.github.com/articles/generating-ssh-keys
OU
fonte
git remote set-url origin https://{username}:{password}@github.com/...
git remote -v
error: cannot spawn sh: No such file or directory
mensagem ...Eu enfrentei exatamente o mesmo problema. Esse problema ocorreu quando eu clonei usando o URL HTTPS e tentei enviar as alterações usando Git Bash no Windows usando:
No entanto, quando usei o URL SSH para clonar, este problema não ocorreu:
fonte
python:3.7-slim
. Portanto, não está relacionado ao Windows.Observe que, se você estiver recebendo este erro:
Então você precisa atualizar seu Git para a versão
2.16
ou posterior.fonte
Para mim, nada funcionou do sugerido acima, eu uso o
git pull
script de shell jenkins e, aparentemente, leva o nome de usuário errado. Passei muito tempo antes de encontrar uma maneira de consertar sem mudar para SSH.Na pasta do usuário, crie o arquivo .gitconfig (se ainda não o tiver feito) e coloque suas credenciais no seguinte formato:,
https://user:[email protected]
mais informações . Depois que seu arquivo .gitconfig vincular a essas credenciais, no meu caso foi:[credential] helper = store --file /Users/admin/.git-credentials
Agora o git sempre usará essas credenciais, não importa o quê. Espero que ajude alguém, como me ajudou.
fonte
[credential] helper = store --file /..../.git-credentials
em.git/config
no meu diretório de trabalhoEncontrei minha resposta aqui :
edite
~/.gitconfig
e adicione o seguinte:Embora resolva um problema diferente, o código de erro é o mesmo ...
fonte
Se você quiser continuar, use https em vez de ssh e evite digitar seu nome de usuário e senha por motivos de segurança.
Você também pode tentar o token Github OAuth , então você pode fazer
git config remote.origin.url 'https://{token}@github.com/{username}/{project}.git'
ougit remote add origin 'https://{token}@github.com/{username}/{project}.git'
Isso funciona para mim!
fonte
Este erro também pode ocorrer ao tentar clonar um URL HTTP inválido. Por exemplo, este é o erro que recebi ao tentar clonar um URL do GitHub que estava alguns caracteres fora:
Na verdade, aconteceu dentro do Emacs, então o erro no Emacs parecia com este:
Então, em vez de um erro útil dizendo que não havia tal repositório naquele URL, ele me deu isso, me enviando em uma busca selvagem até que finalmente percebi que o URL estava incorreto.
Isso é com git versão 2.7.4.
Estou postando isso aqui porque aconteceu comigo há um mês e novamente apenas agora, me enviando na mesma busca do ganso selvagem novamente. > :(
fonte
Resposta curta:
Ignore as três primeiras linhas se não for um novo repositório.
Descrição mais longa:
Só tive o mesmo problema, como nenhuma das respostas acima me ajudou, resolvi postar esta solução que funcionou para mim.
Algumas notas:
Como ferramenta de linha de comando, usei o GitShell (para Windows, uso Terminal.app no Mac).
GitShell é a ferramenta oficial do GitHub, pode ser baixado em https://windows.github.com/
Espero que isso ajude a quem tem o mesmo problema.
fonte
Corrigi isso instalando uma versão mais recente do Git. A versão que instalei é 2.10.2 em https://git-scm.com . Veja a última postagem aqui: https://www.bountysource.com/issues/31602800-git-fails-to-authenticate-access-to-private-repository-over-https
Com o Git Bash mais recente, a janela do gerenciador de credenciais aparece e você pode inserir seu nome de usuário e senha, e funciona!
fonte
Este é um problema com suas credenciais armazenadas no cache de credenciais do sistema. Você provavelmente tem a variável de configuração 'credential.helper' definida como wincred ou winstore e não está conseguindo limpá-la. Se você iniciar o Painel de Controle e iniciar o miniaplicativo Credential Manager, procure os itens na seção de credenciais genéricas denominada "git: https://github.com ". Se você excluí-los, o será recriado na próxima vez, mas o utilitário auxiliar de credenciais solicitará suas novas credenciais.
fonte
git config --global -l | grep credential
. Se houver alguma saída, será o utilitário que está tentando alimentar suas credenciais armazenadas para o servidor quando você faz push.git remote add origin https://github.com/username/Hello-World.git
ousername
que está vinculado a este link repo git está causando problemas, eu não acho que meu PRÓPRIO nome de usuário está causando problemas aqui. Pelo que eu sei, o gerenciador de credenciais ajuda a gerenciar credenciais pessoais, não as credenciais do repositório.Substitua seu url remoto assim:
fonte
TL; DR: verifique se você pode ler / gravar
/dev/tty
. Se não e você já usousu
para abrir o shell, verifique se você o usou corretamente.Eu estava enfrentando o mesmo problema, mas no Linux e encontrei o problema. Não tenho minhas credenciais armazenadas, então sempre as insiro quando solicitado:
A maneira como git lida com conexões http (s) está usando
/usr/lib/git-core/git-remote-https
você pode ver strace aqui:Tentei chamá-lo diretamente:
e o resultado:
E aqui veio a mim:
git-remote-https
tenta ler as credenciais via/dev/tty
então testei se funciona:Mas em outro terminal:
Eu sabia que mudei para este usuário usando,
su
então saí do shell para ver como e descobri que usei o comandosu danman -
então testei novamente:Provavelmente ignorei a mensagem e continuei trabalhando, mas esse foi o motivo. Quando mudei usando o correto
su - danman
tudo funcionou bem:Depois disso, o git começou a funcionar corretamente
fonte
Para aqueles que recebem esse erro em um pipeline do Jenkins, ele pode ser corrigido usando um plug-in do Agente SSH . Em seguida, envolva seus comandos git em algo assim:
fonte
Tente usar um shell normal do Windows, como o CMD.
fonte
Anteriormente, quando não recebi permissão para acessar o repo, também adicionei o pubkey SSH ao gitlab. Nesse ponto consegui acessar o repo e rodar o vendedor do mod go, o mesmo problema que acontece. (talvez por causa do cache)
Depois de um tempo tentando, decido remover a chave SSH e os prompts do terminal preenchendo o nome de usuário e a senha. Está tudo bem então!
fonte
Tive o mesmo problema no IntelliJ IDE e, para mim, nada funcionou do sugerido acima. O que funcionou para mim foi mudar o acesso do repositório Git de privado para público.
fonte
tentando a solução CreativeMagic, o problema de credencial é confirmado:
prompt >>> Nome de usuário para ' https://github.com '
Então, mudei meu url de origem com
e
fonte