it-roy-ru.com

GIT Push: разрешение запрещено (открытый ключ)

GIT: Я пытаюсь отправить файл в репозиторий друга, но с ошибками в открытом ключе.

git Push Origin testbranch
Permission denied (publickey).
fatal: Could not read from remote repository.

Где и как мы определяем открытый/закрытый ключи? 

git remote -v возвращает:

Origin  [email protected]:Sesamzaad/NET.git (fetch)
Origin  [email protected]:Sesamzaad/NET.git (Push)

любая помощь приветствуется.

33
Wyguf Seak

Я столкнулся с той же проблемой, вот что я сделал, что сработало для меня.

Используйте SSH вместо http. Удалить происхождение, если его http.

git remote rm Origin

Добавить URL-адрес SSH

git remote add Origin [email protected]:<username>/<repo>.git

Создайте ключ ssh внутри папки .ssh /. Он спросит путь и пароль, где вы можете просто нажать Enter и продолжить. 

cd ~/.ssh
ssh-keygen

Скопируйте ключ. Вы можете просмотреть свой ключ, используя. Если вы не указали другой путь, это путь по умолчанию.

cat ~/.ssh/id_rsa.pub

Добавьте этот ключ в свой аккаунт на github. Далее сделай

ssh -T [email protected]

Вы получите приветственное сообщение в вашей консоли.

перейдите в папку вашего проекта. git Push -u Origin master теперь работает!

67
user3445140

Я просто должен был разобраться с этим вопросом. Ответ @ user3445140 помог мне, но это было намного больше, чем мне нужно было сделать.

1. cat ~/.ssh/id_rsa.pub
2. copy the key, including the "ssh-rsa" but *excluding your computer name at the end*
3. Go to: https://github.com/settings/ssh
4. Add your SSH key
16
steel

Это сработало для меня.

прежде всего, удалите текущий пульт:

git remote rm Origin

во-вторых, добавить удаленный через HTTPS, но git @ xxx:

git remote add Origin https://github.com/Sesamzaad/NET.git

тогда Пуш сработал для меня:

git Push Origin master
10
Cloud13th

Ни одно из вышеперечисленных решений не помогло мне. Для контекста я использую Ubuntu, и я уже просмотрел документацию по настройке ssh-ключа. Для меня исправлением было запустить ssh-add в терминале. Это решило проблему.

Источник: http://baptiste-wicht.com/posts/2010/07/tip-how-to-solve-agent-admitted-failure-to-sign-using-the-key-error.html

5
vsahu

Я использую Ubuntu 16.04 

Удаление удаленного источника с помощью 

git remote rm Origin

установка http URL с помощью

git remote add Origin https://github.com/<<Entire Path of the new Repo>>

git Push Origin master

Выше шаги успешно добавили код для репо. 

4
vignesh787

Я исправил это, прочитав ключ к моему ssh-агенту. По некоторым причинам это ушло.

2
Bennet G.

Вы, вероятно, должны добавить свой открытый ключ в github. https://help.github.com/articles/generating-ssh-keys

Проверьте эту тему: GitHub: Отказано в доступе (publickey). фатальный: удаленный конец неожиданно зависает

1
Walter B

Это сработало для меня. Самое простое решение на сегодняшний день.

Если вы используете GitHub для Windows и получаете эту ошибку, проблема может заключаться в том, что вы пытаетесь запустить команду в неправильной оболочке или режиме. Если вы пытаетесь ввести git Push Origin master в обычной командной строке или PowerShell, это проблема. 

Вы должны сделать это в git Shell. Просто откройте Github для Windows, щелкните правой кнопкой мыши и выберите «Открыть оболочку здесь». Это выглядит как обычное окно PowerShell, но это не так, что заставляет новичков сбивать с толку, как и меня.

Я надеюсь, что другие найдут это полезным.

1
dberm22

Если у вас уже есть открытый ключ на сервере GITHUB, есть другие решения, которые вы можете попробовать.

В моем случае не удалось выполнить GIT Push изнутри RUBYMINE, но это было решено из окна терминала.

Для получения дополнительных решений посетите эту страницу https://github.com/gitlabhq/gitlabhq/issues/4730

0
Mauricio Gracia Gutierrez

Эта ошибка произошла при использовании Ubuntu Bash в Windows.

Я переключился на стандартный Windows CMD Prompt, и он работал без ошибок.

Это обходной путь, поскольку это означает, что вам, вероятно, потребуется загрузить закрытый ключ ssh в среде Ubuntu, если вы хотите использовать Ubuntu.

0
Andrew

Для развертывания в репозитории вашего друга вам необходимо добавить свой открытый ключ в ключи развертывания репозитория.

Перейдите в хранилище, перейдите к ключам развертывания и добавьте id_rsa.pub (или как там у вас имя) для «развертывания ключей». 

Я считаю, что добавление ключа в вашу учетную запись позволяет вам писать только в репозитории, созданные вашей учетной записью. Если он был создан организацией, вам необходимо добавить ключ к ключам развертывания хранилища. 

https://developer.github.com/v3/guides/managing-deploy-keys/

0
the tao

Я столкнулся с той же проблемой. Попросите вашего друга добавить вас в качестве соавтора, зайдя в настройки своего репо и добавив нового соавтора.

Вы получите электронное письмо с приглашением, примите его. Затем вы можете отправиться в путь…. Просто убедитесь, что вы добавили пульт дистанционного управления. 

0
shivam bansal