Я только что купил новый компьютер, и я пытаюсь клонировать на нем свой проект heroku.
Вот что я сделали до сих пор. Я не включил трассировку, но все было сохранено в нужном месте, и функции работали без ошибок.
>> sudo ssh-keygen
>> heroku keys:add
>> sudo git clone -o heroku git@heroku.com:myapp.git
Initialized empty Git repository in /Users/macuser/Sites/shwagr/shwagr/.git/
Permission denied (publickey).
Затем я услышал о том, как сделать это через ssh bash ..
>ssh-agent bash
>ssh-add ~/.ssh
Permissions 0777 for '/Users/macuser/.ssh' are too open.
It is recommended that your private key files are NOT accessible by others.
This private key will be ignored.
Что? Хорошо, папа.
>>sudo chmod 700 ~/.ssh
>>ssh-agent bash
>>ssh-add ~/.ssh
Enter passphrase for /Users/macuser/.ssh:
Bad passphrase, try again for /Users/macuser/.ssh:
Bad passphrase, try again for /Users/macuser/.ssh:
Bad passphrase, try again for /Users/macuser/.ssh:
Bad passphrase, try again for /Users/macuser/.ssh:
Bad passphrase, try again for /Users/macuser/.ssh:
Bad passphrase, try again for /Users/macuser/.ssh:
Не уверен, какой пароль здесь, но это точно был не я, кто установил этот. Если я просто нажимаю return / enter, он выходит, но это не создает у меня впечатления, что это сработало. И, следовательно, он все еще не позволяет мне клонировать хранилище.
Есть идеи?
ОБНОВЛЕНИЕ
Я вошел в свой файл ~ / .ssh и выполнил ssh-keygen -t rsa
, и я создал новый ключ под названием love
. Затем я ключей heroku: успешно добавить love.pub
.
Затем я пошел в git clone ..
sudo git clone -o heroku git@heroku.com:mysite.git
Initialized empty Git repository in /Users/macuser/Sites/shwagr/shwagr/.git/
Permission denied (publickey).
ОБНОВЛЕНИЕ 2
Я удалил ~ / .ssh и воссоздал его без Sudo
. Затем я удалил все ключи, которые я создал сегодня, из heroku и перезапустил процесс.
Та же ошибка.
Обновление 3
>>heroku keys
No Keys for this computer.
>>sudo heroku keys
No Keys for this computer
>>heroku keys:add
>>heroku keys
ssh-rsa AAAA...J67lw== macuser@Mac-Users-MacBook-Pro.local
Сравнил эти ключи с моими ключами: они идентичны. : D
Отказано в доступе.
Попытка 4
ключей героя: очистить rm -rf ~ / .ssh mkdir ~ / .ssh cd ~ / .ssh ssh-keygen -t rsa ключи героя: добавить CD / Пользователи / macuser / Сайты / sudo git clone -o heroku git@heroku.com: shwagr.git
Сбой.
fatal: Удаленный конец неожиданно зависает
Огромное обновление
Только что обнаружил, что git repo на самом деле пуст. И это просто символическая ссылка (когда вы присоединяете к нему реальный домен, он все еще использует старый в качестве реального репо). Поэтому, когда я вытащил одно из имен по умолчанию в Heroku, например smooth-buttery-back-52.git, оно вытащило и сработало, и фактически стало моим хранилищем.
>> sudo ssh-keygen
НЕТ. Скиньте судо. Это создаст ключи для пользователя root, а не для вашего пользователя. Ну если конечно по какой-то странной причине вы не захотите использовать root. Но тогда вам нужно ставить перед всеми связанными командами, которые будут использовать этот ключ, префикс sudo
.
вы создали ключ для своей учетной записи sudo, но не для своей учетной записи пользователя, и вы не ключи sudo heroku:add
, поэтому он загрузил ключ локального пользователя, а не ключ sudo, я предполагаю. Почему вы хотите, чтобы ваше локальное приложение в вашем домашнем каталоге все равно имело разрешения sudo? Я бы, вероятно, использовал sudo и просто сделал бы это как ваш пользователь, следуя этому руководству: http://docs.heroku.com/keys