Eu clonei um repositório Git da minha conta GitHub para o meu PC.
Quero trabalhar tanto com meu PC quanto com o laptop, mas com uma conta GitHub.
Quando eu tento empurrar ou puxar do GitHub usando meu PC, ele requer nome de usuário e senha, mas não ao usar o laptop!
Eu não'não quero digitar meu nome de usuário e senha toda vez que eu interajo com a origem. O que eu estou perdendo aqui?
Um erro comum é a clonagem usando o padrão (HTTPS) em vez do SSH. Você pode corrigir isso indo ao seu repositório, clicando em "Clonar ou baixar", depois clicando no botão "Usar SSH" acima do campo URL e atualizando a URL do seu controle remoto de origem desta forma:
git remote set-url origin [email protected]:username/repo.git
Isto está documentado no GitHub: Trocando URLs remotas de HTTPS para SSH.
Acabei de me deparar com o mesmo problema, e a solução mais simples que encontrei foi usar a URL SSH em vez da URL HTTPS:
ssh://[email protected]/username/repo.git
E não isto:
https://github.com/username/repo.git
Agora você pode validar com just a chave SSH ao invés do nome de usuário
e senha
.
Você basicamente tem duas opções.
Se você usa o mesmo usuário em ambas as máquinas você precisa copiar a chave .pub para o seu PC, então GitHub sabe que você é o mesmo usuário.
Se você criou um novo arquivo .pub para seu PC e quer tratar as máquinas como diferentes usuários, você precisa registrar o novo arquivo .pub no site do GitHub.
Se isto ainda não funcionar pode ser porque o ssh não está configurado correctamente e que o ssh não consegue encontrar a localização das suas chaves. Tente
ssh -vv [email protected]
Para obter mais informações sobre o porquê do SSH falhar.