Os repositórios clonados do GitHub pedem uma senha, enquanto originalmente criados não

9

Acabei de perder um monte de repositórios do meu disco, então os copiei do GitHub. Agora, eles solicitam nome de usuário e senha toda vez que eu envio algo para o GitHub. Aqueles que não foram excluídos não fazem isso.
A única solução que li para se livrar do prompt de nome de usuário / senha está gerando a chave ssh. A coisa é que eu já tenho uma chave, caso contrário eu não poderia empurrar sem prompts nesses repos, que eu não clonava.

Eu olhei para git config para dois dos meus repositórios, um que eu posso enviar sem senha e um que eu clonei. A única diferença foi branch.master.remote e branch.master.merge settings, o que eu desconfigurei, tornando git config o mesmo. Mas o prompt ainda está lá.

Não tenho certeza se a geração da nova chave ssh funcionará. Quais são minhas opções?

    
por usr 03.12.2011 / 03:25

1 resposta

21

Meu palpite:

Seus repositórios antigos usavam controles remotos de SSH ( [email protected]: ou ssh://[email protected]/ prefixos), que usavam autenticação de chave pública. (Na verdade, o servidor SSH do Github nunca pede uma senha.)

Seus novos repositórios usam controles remotos HTTP ( https://username@github.com/ ), que suportam apenas a autenticação HTTP Basic baseada em senha e não usam suas chaves SSH.

Altere seus URLs remotos para usar o SSH novamente. Use git remote set-url ou edite .git/config para fazer isso. Substituir

https://username@github.com/username/repo.git

com apenas

[email protected]:username/repo.git

Você pode até ter uma entrada em ~/.gitconfig que instrua o git a traduzir URLs remotos de HTTP ou Git para SSH.

Desta forma, se o seu repositório estiver configurado para um controle remoto HTTP ou Git, o git ignorará essa configuração ao pressionar e usará o SSH.

[url "[email protected]:"]
    pushInsteadOf = git://github.com/
    pushInsteadOf = https://github.com/

(Uma configuração insteadOf = também é possível, para substituir tanto o push como o .)

    
por 03.12.2011 / 14:16

Tags