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)
любая помощь приветствуется.
Ответы
Ответ 1
Я столкнулся с одной и той же проблемой, вот что я сделал, что сработало для меня.
Используйте ssh вместо http. Удалите происхождение, если его http.
git remote rm origin
Добавить ssh url
git remote add origin [email protected]:<username>/<repo>.git
Сгенерируйте ключ ssh внутри .ssh/folder. Он будет запрашивать путь и кодовую фразу, где вы можете просто нажать Enter и продолжить.
cd ~/.ssh
ssh-keygen
Скопируйте ключ. Вы можете просмотреть свой ключ. Если вы не указали другой путь, это значение по умолчанию.
cat ~/.ssh/id_rsa.pub
Добавьте этот ключ в свою учетную запись github. Затем сделайте
ssh -T [email protected]
В консоли появится приветственное сообщение.
cd в вашу папку проекта. git push -u origin master
теперь работает!
Ответ 2
Я просто должен был разобраться с этим вопросом. Ответ @user3445140 помог мне, но это было намного больше, чем мне нужно было сделать.
- Получите ваш открытый SSH-ключ с помощью
cat ~/.ssh/id_rsa.pub
- Скопируйте ключ, включая "ssh-rsa", но в конце укажите имя вашего компьютера.
- Перейдите на https://github.com/settings/ssh.
- Добавьте свой SSH ключ
Ответ 3
Это сработало для меня.
прежде всего удалите текущий пульт:
git remote rm origin
второй, добавьте удаленный доступ через HTTPS, но git @xxx:
git remote add origin https://github.com/Sesamzaad/NET.git
тогда push работал у меня:
git push origin master
Ответ 4
Я использую 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
Выше шаги успешно добавили код для репо.
Ответ 5
Ни одно из вышеперечисленных решений не помогло мне. Для контекста я использую 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
Ответ 6
Я исправил это, прочитав ключ к моему ssh-агенту. По некоторым причинам это ушло.
Ответ 7
Это сработало для меня. Простейшее решение на сегодняшний день.
Если вы используете GitHub для Windows и получаете эту ошибку, проблема может заключаться в том, что вы пытаетесь запустить команду в неправильной оболочке или режиме. Если вы пытаетесь выполнить git push origin master
в обычной командной строке или PowerShell, это проблема.
Вам нужно сделать это в оболочке git. Просто откройте Github для Windows, щелкните правой кнопкой мыши и выберите "Открыть оболочку здесь". Это похоже на обычное окно PowerShell, но это не так, что делает его очень запутанным для новичков git, как и я.
Я надеюсь, что другие считают это полезным.
Ответ 8
Вероятно, вам нужно добавить свой открытый ключ в github. https://help.github.com/articles/generating-ssh-keys
Проверьте эту тему: GitHub: Permission denied (publickey). фатальный: удаленный конец неожиданно повесил трубку
Ответ 9
Документация от Github действительно объяснительная.
https://help.github.com/en/articles/adding-a-new-ssh-key-to-your-github-account https://help.github.com/en/articles/generating-a-new -ssh-ключ-и-добавления-он-к-SSH-агента
Я думаю, что вы должны сделать последние шаги из руководства, чтобы правильно настроить ключи
$ eval "$(ssh-agent -s)"
$ ssh-add ~/.ssh/id_rsa
Ответ 10
Если у вас уже есть открытый ключ на сервере GITHUB, вы можете попробовать другие решения.
В моем случае GIT PUSH терпел неудачу изнутри RUBYMINE, но из окна терминала решала проблему.
Для получения дополнительных решений посетите эту страницу
https://github.com/gitlabhq/gitlabhq/issues/4730
Ответ 11
Для развертывания в репозитории вашего друга вам нужно добавить свой открытый ключ в ключи развертывания репозитория.
Перейдите в репозиторий, перейдите к развертыванию ключей и добавьте id_rsa.pub(или что-то другое), чтобы "развернуть ключи".
Я полагаю, что добавление ключа к вашей собственной учетной записи позволяет вам писать в репозитории, созданные вашей учетной записью. Если он был создан организацией, вам нужно добавить ключ к ключам развертывания repo.
https://developer.github.com/v3/guides/managing-deploy-keys/
Ответ 12
Я столкнулся с той же проблемой. Попросите вашего друга добавить вас в качестве соавтора, перейдя в его настройки репозитория и добавив нового соавтора.
Вы получите электронное письмо с приглашением, примите его. Тогда вы готовы идти. Просто убедитесь, что вы добавили правый пульт.
Ответ 13
Эта ошибка произошла при использовании Ubuntu Bash в Windows.
Я переключился на стандартное приглашение Windows cmd, и оно работало без ошибок.
Это обходной путь, поскольку это означает, что вам, вероятно, потребуется загрузить закрытый ключ ssh в среде Ubuntu, если вы хотите использовать Ubuntu.
Ответ 14
Вам необходимо преобразовать проект в свой собственный репозиторий пользователей.
Затем add origin
:
git remote add upstream your-ssh-here <br>
git fetch upstream <br>
git branch --set-upstream-to=upstream/master master
Ответ 15
Решение: вы должны добавить ключ ssh в свой профиль git-hub. Выполните шаги, чтобы решить эту проблему
- Папка правой кнопкой мыши, которую вы хотите вставить в Git
- Выберите здесь проблему git-bash
- Введите команду ssh-keygen этой командой, ваш ключ сгенерирован
- Скопируйте ключ из cmd или перейдите в (C: /User/your_user/.ssh/)
- откройте id.rsa с помощью блокнота.
- Скопируйте свой ключ
- Теперь перейдите в свой профиль на git-hub.
- Перейдите в настройки
- выберите ключи SSH и Gpg
- выберите опцию Новый ключ ssh
- добавить ключ окна в заголовке
- Вставьте свой ключ в часть описания под полем заголовка
- Сохранить
Теперь вы готовы нажать на свою папку
- Теперь перейдите в папку, которую вы хотите загрузить
- щелкните правой кнопкой мыши на папке
- Выберите git bash здесь
- мерзавец
- git add README.md
- git commit -m "первый коммит"
- Git Remote добавить источник https://github.com/
- git push -u мастер оригинала
Надеюсь, это будет полезно для вас