Este é o cenário:
Eu tenho meu PC do escritório onde uso o git e o github para gerenciar o código-fonte.
Quando chego em casa, percebo que esqueci de enviar meus últimos commits; mas eu posso ssh na minha máquina de trabalho do meu laptop em casa. Então eu acho que vou ssh, empurrar meus commits e, em seguida, puxá-los para o meu laptop em casa. Ambas as máquinas usam chaves SSH para conversar com o Github.
Eu sempre achei que o ssh-ing era tão bom quanto estar sentado na frente da máquina remota. No entanto, quando eu ssh in e tento empurrar meus commits, recebo um erro:
me@home_laptop$ ssh me@workpc
(authenticates using ssh key)
me@workpc$ git push
Permission denied (publickey).
fatal: Could not read from remote repository.
Please make sure you have the correct access rights
and the repository exists.
Existe uma maneira simples de fazer o push?
FWIW, a máquina de trabalho está rodando o Ubuntu, e a máquina doméstica Windows (PuTTy / Git bash)
Editar : Então eu consegui fazer um empurrão, mas eu suspeito que eu ainda não tenho a resposta para a minha pergunta. Aqui está o que eu fiz.
me@home_laptop$ ssh -A me@workpc
(Authenticates using public keys)
me@workpc$ git push
(Successfully pushes code - Result!)
(logout)
me@home_laptop$ git pull
(Brings in latest code)
A opção -A
funcionou, mas agora não tenho certeza se fui autenticado no servidor remoto git usando a chave pública de home_laptop
ou workpc
's