Git push не работает на экране GNU - PullRequest
7 голосов
/ 13 мая 2011

Я могу очень просто нажать на мой репозиторий GitHub с моего VPS, но как только я вхожу в экран, я получаю отказано в разрешении:

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

Даже если я могу авторизоваться:

littke@[server}:~/src/[repo]$ ssh git@github.com -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.Я могу толкать за ее пределами.Я гуглил, но ничего не смог найти.

Ответы [ 3 ]

3 голосов
/ 13 мая 2011

Вы используете файл идентификации с ssh (опция -i), отличный от git.Вы должны указать git, какую личность использовать, через ваш конфиг.Смотрите github's Устранение неполадок с SSH , раздел «Конфигурация SSH»:

Создайте или откройте файл в ~ / .ssh / config Добавьте следующие строки:

Host github.com
  User git
  Hostname github.com
  PreferredAuthentications publickey
  IdentityFile [local path]
3 голосов
/ 13 мая 2011

-i заставляет ssh использовать другой ключ. Когда вы пытаетесь использовать git, ssh не знает об этом ключе. Попробуйте вместо этого использовать имя ключа по умолчанию или ssh-add ключ, чтобы ssh знал об этом.

2 голосов
/ 15 сентября 2011

Необходимо настроить некоторые дополнительные биты, чтобы переадресация агента SSH работала на экране.Взгляните на Как заставить экран автоматически подключаться к текущему ssh-agent при повторном подключении к существующему экрану? для получения подробной информации об этом.

...