Отказано в доступе (открытый ключ) фатальная ошибка: не удалось прочитать из удаленного репозитория. при клонировании репозитория Git


Я не могу клонировать репозиторий Git, и получаю эту ошибку:

krishna.soni@KRISHNACHANDRAS /c/Projects $ git clone http://stage.abc.com:10088/pqr
http://<url>/<repository> Cloning into '<repository>'... fatal: could not read Username for 'http://<url>': No such file or directory

Я читал Bitbucket, Windows и "fatal: не удалось прочитать пароль для", но все равно есть проблема.

Я пошел дальше, но теперь я получаю эту ошибку

sh.exe": chown: command not found

krishna.soni@KRISHNACHANDRAS /c
$ git clone ssh://krishna.sonipayu.in@stage.payupaisa.
/projects
Cloning into 'C:/projects'...
Permission denied (publickey).
fatal: Could not read from remote repository.

Please make sure you have the correct access rights
and the repository exists.

> krishna.soni@KRISHNACHANDRAS /c
>     $ git clone ssh:<url>
>     ts
>     Cloning into 'C:/projects'...
>     Permission denied (publickey).
>     fatal: Could not read from remote repository.

Please make sure you have the correct access rights

и репозиторий существует.

20 110

20 ответов:

похоже, что проблема с разрешениями-не проблема Windows 7.

ваш ssh ключ не авторизован -Permission denied (publickey).

вам нужно создать открытый ssh ключ и попросить администратора репозитория Git добавить ssh публичный ключ

информация о том, как сделать это: сохранение ключа ssh не удается

для людей, которые приходят сюда, которые просто пытаются получить репозиторий, но не заботятся о протоколе (ssh / https), вы можете просто захотеть используйте https вместо ssh (если он поддерживается).

Так, например, вы используете

git clone https://github.com/%REPOSITORYFOLDER%/%REPOSITORYNAME%.git

вместо

git clone git@github.com:%REPOSITORYFOLDER%/%REPOSITORYNAME%.git

Если после создания SSH и добавления его в вашу учетную запись Bitbucket или где-либо еще есть проблема с доступом, вам нужно сделать следующее на GitBash, OSX или Linux:

ssh-add -l

затем, если вы не видите свой ключ в списке, добавьте его с помощью:

ssh-add ~/.ssh/identity

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

я столкнулся с той же проблемой с GitHub. Это легко решить.

  1. создайте SSH-ключ на вашем компьютере, как описано здесь:генерация SSH ключей.
  2. войдите в свою учетную запись GitHub:GitHub Login.
  3. в свой аккаунт добавьте только что сгенерированный SSH ключ:ключи SSH моей учетной записи.
  4. попробовать еще раз git clone проект.

Я также столкнулся с той же проблемой. Я сделал следующее И это сработало для меня:

  1. генерировать ключи от клиента Git GUI на Windows. Скопируйте этот ключ в буфер обмена.
  2. откройте свой аккаунт на bitBucket/ git сайт, и добавить этот ключ в свой профиль. Таким образом, сервер знает, что вы являетесь законным пользователем, получающим доступ из законной системы.
  3. вот и все. Отныне все команды push работали на меня.

у меня была эта проблема на Mac - в то время как я правильно настроил SSH для доступа к моему репозиторию Git, после перезагрузки (и некоторое время Mac был в тупике) все мои учетные данные были удалены. По-видимому, по какой-то причине ключ паба был установлен на 644, что привело к его удалению из брелка. Для чтения:

  • chmod 600 публичный ключ
  • ssh-add ~/.ssh/[your private key] - это должно отображать, что идентичность была добавлена. Ключевой файл, который вы хотите, - это тот, который без него .паб расширение.
  • ssh-add -l должен показать вам недавно добавленных удостоверение

edit: по-видимому, MacOS имеет тенденцию удалять ключи - после загрузки обновления High Sierra (но я еще не установил его) мой ключ был удален, и мне пришлось добавить его снова через ssh-add

Github (или Bitbucket) не может найти ваш ssh-ключ на своем сервере.

просто добавьте свой ключ в Настройки учетной записи.

я получил ошибку...

Permission denied (publickey).
fatal: Could not read from remote repository.
Please make sure you have the correct access rights
and the repository exists.

...когда я пытался связаться с подсказкой Git Bash для Bitbucket после того, как мой ноутбук умер от плохого обновления Windows 10 и был возвращен к заводским настройкам. Я восстановил все мои файлы ssh из резервной копии.

причиной ошибки оказалось несоответствие в моем имени учетной записи Windows после восстановления компьютера. Я узнал, что файл с открытым ключом id_rsa.pub заканчивается легко читаемой строкой, содержащей мои окна имя учетной записи, за которым следует @ "войти", а затем имя компьютера.

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

чтобы решить эту проблему, я просто отредактировал мой файл открытого ключа id_rsa.pub и удалил средний инициал в моем имени в конце. Я застрял с тем же именем компьютера, так что был окей. Я скопировал содержимое файла в буфер обмена Windows. Затем я вошел в Bitbucket, зашел в Настройки Bitbucket под моим Аватаром и добавил новый открытый ключ, куда я вставил новое содержимое.

вернувшись в приглашение Git Bash, я подтвердил, что теперь он работает, введя команду...

ssh -T git@bitbucket.org

...и я получил обратно сообщение,что я был подписан.

для меня, когда я хотел clone из моего репозитория у меня было такое же сообщение, замеченное перед "отказано в разрешении (publickey) fatal: не удалось прочитать из удаленного репозитория". Решение для моего случая Не использовать sudo перед клона вот именно.

вам нужно создать новый ключ ssh, запустив ssh-keygen -t rsa.

я столкнулась с той же проблемой во время работы git clone команда из командной строки windows. Но команда успешно выполняется из Git Bash.

Если вы создадите новый открытый ключ ssh и вставите его в bitbucket или github и

Это не помогло -пожалуйста, попробуйте перезагрузить компьютер. Это помогло мне!!

в macOS / Linux (Ubuntu):

1. для аутентификации вам нужно добавить свою публичную часть вашей пары ключей SSH в bitbucket из ваших пользовательских настроек: пользовательские настройки -- > SSH keys

вы найдете указанную публичную часть в своем~/.каталог СШ, обычно id_rsa.pub . обратите внимание на .pub часть имени файла для общественности. это поможет вам создать его, если у вас его еще нет

вы еще не сделали ...

2. вы должны сообщить своей системе, какой ключ использовать с каким удаленным хостом, поэтому добавьте эти строки в свой ~/.ssh / config file

Host bitbucket.org
 IdentityFile ~/.ssh/PRIVATE_KEY_FILE_NAME

здесь PRIVATE_KEY_FILE_NAME - это имя частной части вашей пары ключей SSH, если вы не связались с ней, обычно ее имя по умолчанию:id_rsa в этом случае замените PRIVATE_KEY_FILE_NAME выше id_rsa(закрытый ключ не имеет

Если все не удается, как это было со мной, удалите GIT, переустановите. По какой-то причине это исправляет.

П. С.

  1. Я пробовал генерировать новые ключи и обновление на SSH открытых ключей
  2. также попытался удалить все ключи и попытался создать новый ключ.
  3. и нет, ничего плохого с моим .gitconfig

при клонировании у меня была аналогичная проблема [ моя ошибка: Отказано в доступе (открытый ключ). фатальная ошибка: не удалось прочитать из удаленного репозитория. Пожалуйста, убедитесь, что у вас есть соответствующие права доступа .. так далее ]

-- Я использовал bitBucket/UBUNTU14. 04 В моем случае, но уже был набор ключевых файлов, которые я ранее создал, и я изменил имя файлов. Я просто скопировал файлы к стандартным id_rsa & id_rsa.формат названия паба. Я тогда повторно запустите команду без проблем.

OBTW:я мог бы также использовать запрос пароля с помощью клона стиля HTTP.

У меня была аналогичная проблема на linux. Я решил проблему, войдя на сервер github и создав ключ развертывания. Это в настройках репозитория. Затем я скопировал и вставил свой открытый ключ (который обычно находится в ~/.ssh / id_rsa.паб, но ваша конфигурация может быть другой). Существует флажок, чтобы дать этому ключу доступ на запись. Нажмите на него (если вы не используете git только для развертывания, в этом случае не нажимайте на него).

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

добавляя это здесь на всякий случай, если кто-то видел, что другие ответы, похоже, не относятся к их ситуации.

я столкнулся с той же проблемой при настройке ssh для gitlab. У меня уже есть ssh для github и я не могла переписать это. Шаги, которые работали для меня :

  1. создать SSH с новым путем и добавить его в список ssh ssh-add /path/to/new/id_rsa.
  2. создайте файл с именем config на ~/.ssh/ использование. Я использовал vi ~/.ssh/config/.
  3. добавьте это во вновь созданный файл

# GitLab.com server Host gitlab.com RSAAuthentication yes IdentityFile /path/to/new/id_rsa

  1. сохранить и выход.

после этого перезагрузите терминал и попробуйте нажать, он должен работать

Если вы хотите клонировать проекты с открытым исходным кодом, чтобы отправить запрос на вытягивание:

Я хотел клонировать проект с открытым исходным кодом, чтобы я мог представить некоторые запросы. Проблема в том, что у меня не было разрешения от владельца проекта. Независимо от того, так как мое намерение состояло в том, чтобы представить PR, вот жизнеспособная альтернатива:

мое решение:

  1. Fork Репозиторий

Fork Repo

  1. затем клонирование из вашего раздвоенного хранилища. Clone from forked Repo

  2. работа над вашими функциями, а затем отправить запрос на вытягивание.

Это может быть глупо, но это случилось с нами:

Если вы используете bitbucket и Sourcetree, и вы просто копируете URL-адрес клона в новый диалог РЕПО, он покажет ту же ошибку при вытягивании или нажатии.

убедитесь, что вы удалили материал "git clone" перед URL-адресом.