我可以很好地从我的vps推送到github repo,但是一旦我进入一个屏幕,就会被拒绝:

littke@[server]:~/src/[repo]$ git push
Pushing to [email protected]:littke/[repo].git
Permission denied (publickey).
fatal: The remote end hung up unexpectedly

即使我能证明:
littke@[server}:~/src/[repo]$ ssh [email protected] -i ~/.ssh/littke
Enter passphrase for key '/home/littke/.ssh/littke':
PTY allocation request failed on channel 0
Hi littke! You've successfully authenticated, but GitHub does not provide shell access.

同样,这只发生在GNU屏幕内部。我可以把它推出去。我搜索了一下,但什么也找不到。

最佳答案

您使用的ssh身份文件(选项-i)与git使用的不同。您必须通过配置告诉git使用哪个标识。请参阅github的Troubleshooting SSH issues“ssh config”部分:
在创建或打开文件
~/.ssh/config添加以下行:

Host github.com
  User git
  Hostname github.com
  PreferredAuthentications publickey
  IdentityFile [local path]

08-27 20:05