Git: фатальный: не удалось прочитать из удаленного хранилища

Я пытаюсь установить git с помощью http://danielmiessler.com/study/git/#website для управления моим сайтом.

Я добрался до последнего шага в инструкциях: git push website + master: refs/heads/master

Я работаю с помощью командной строки git ming32 в win7

$ git push website +master:refs/heads/master
[email protected]***.com password:
Connection closed by 198.91.80.3
fatal: Could not read from remote repository.

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

Одна из проблем может заключаться в том, что программа ищет [email protected]***.com. когда я подключаюсь через ssh к моему сайту, у меня другое имя пользователя (скажем, "abc" ). поэтому, возможно, это должно быть [email protected]***.com. Если так, я не знаю, как это изменить, или если я могу нажать под псевдонимом

Ответ 1

Вы можете указать имя пользователя, которое SSH должен отправить в удаленную систему как часть удаленного URL. Поместите имя пользователя, а затем @, перед удаленным именем хоста.

git remote set-url website [email protected]***.com:path/to/repo

Ответ 2

Ваш ключ ssh, скорее всего, был удален из агента ssh

ssh-add ~/.ssh/id_rsa

где id_rsa - это ключ ssh, связанный с git repo

Ответ 3

Убедитесь, что у вас правильный URL-адрес в .git/config

url = [email protected]:username/repo.git

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

$ git push -u origin master

Вы можете проверить, какой ключ используется:

$ ssh -vvv [email protected]

В ответе должно быть что-то вроде этого:

debug1: Next authentication method: publickey
debug1: Offering RSA public key: ~/.ssh/id_rsa
...
You've successfully authenticated, but GitHub does not provide shell access.

Также можно определить правила для ssh в ~/.ssh/config, например. на основе псевдонимов:

   Host github
      HostName github.com 
      User git
      IdentityFile "~/.ssh/id_rsa"

   Host git
      HostName github.com 
      User git
      IdentityFile "~/.ssh/some_other_id"

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

Ответ 4

Я сталкивался с тем же вопросом некоторое время назад...

my.git/config имеет

url = [email protected]:manishnakar/polymer-demo.git

Я заменил его на

url = https://github.com/manishnakar/polymer-demo.git 

и теперь он работает:)

Ответ 5

Попробуйте удалить переменную среды GIT_SSH с помощью unset GIT_SSH. Это стало причиной моей проблемы.

Ответ 6

Это обычно вызвано тем, что SSH-ключ не соответствует удаленным.

Решения:

  • Перейдите к терминалу и введите следующую команду (Mac, Linux), заменив свой идентификатор электронной почты.

    ssh-keygen -t rsa -C "[email protected]"

  • Скопируйте сгенерированный ключ, используя следующую команду, начиная с слова ssh.

    cat ~/.ssh/id_rsa.pub

  • Вставьте его в github, bitbucket или gitlab, соответствующие вашему пульту.
  • Сохраните его.

Ответ 7

Убедитесь, что ssh-agent запущен, выполнив следующую команду на своем терминале:

eval $(ssh-agent -s)

Источник: документация Github.

Ответ 8

После некоторого исследования я наконец получил решение для этого, вы указали переменную окружения в путь plink.exe. Поэтому, если вы удалите этот путь, снова откройте git bash и попробуйте клонировать через SSH, он будет работать.

Обратитесь к этой ссылке

http://sourceforge.net/p/forge/site-support/2959/#204c

Ответ 9

У меня была такая же проблема.

Эта ошибка означает, что вы не указали свой удаленный URL-адрес, на который будет распространяться ваш код.

Вы можете установить удаленный URL-адрес двумя (в основном) способами:

  1. Укажите удаленный URL с помощью команды Git Bash.

    • Перейдите в каталог вашего проекта

    • Открытый Git Bash

    • Выполнить команду:

      • git remote set-url origin <https://abc.xyz/USERNAME/REPOSITORY.git>
  2. Упоминание удаленного URL прямо в конфигурационном файле

    • Перейдите в каталог вашего проекта

    • Перейдите в .git папку

    • .Откройте файл config в текстовом редакторе

    • Скопируйте и вставьте ниже строки

      • [remote "origin"] url = https://abc.xyz/USERNAME/REPOSITORY.git fetch = +refs/heads/*:refs/remotes/origin/*

Для получения более подробной информации перейдите по этой ссылке.

Ответ 10

У меня была такая же ошибка. Решение следующее: Я исправил свой URL-адрес в .git/config. Просто скопировал это из URL-адреса клона HTTPS. Это было бы примерно так:

url = https://github.com/*your*git*name*/*your*git*app*.git

Это сработало.

Ответ 11

Если вы используете Gitlab, вам может потребоваться войти в систему и принять новые условия Gitlab, прежде чем пытаться вытащить или нажать.

Ответ 12

Другое обходное решение:

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

Ответ 13

В вашем файле .git/config

[remote "YOUR_APP_NAME"]
    url = [email protected]:YOUR_APP_NAME.git
    fetch = +refs/heads/*:refs/remotes/YOUR_APP_NAME/*

И просто

git push YOUR_APP_NAME master:master 

Ответ 14

В моем случае я использую корпоративную сеть (без подключения к Интернету) в офисе. Чтобы вытащить код из github, я устанавливаю https-прокси в gitbash, а затем использую https вместо ssh, чтобы вытащить код, он отлично работает. Однако, когда вы нажимаете код, прокси-сервер https не будет работать. Таким образом, любой из них может переключиться на интернет-сеть (с подключением к Интернету) или установить прокси-сервер ssh.

Ответ 15

На самом деле я пробовал много вещей, чтобы заставить его работать на Win7, поскольку он меняет SSH exectun fron native на build-it и назад и ту же ошибку. Случайно, я изменяю его на HTTPS в файле .git/config:

[remote "origin"]
        url = https://github.com/user_name/repository_name.git
        fetch = +refs/heads/*:refs/remotes/origin/*

и он наконец-то сработал. Так что, возможно, это может сработать и для вас.

Ответ 16

В моем случае я использовал ключ ssh с паролем для аутентификации с помощью github. Я не настроил правильную настройку в Windows (только в cygwin). Недопустимые шаги заключались в том, чтобы указать переменную окружения git_ssh в plink.exe. Кроме того, вам нужно получить github.com в plink known_hosts.

   plink github.com
   y
   <then ctrl-c>

Надеюсь, это поможет!

Я уверен, что желание intellij дало бы мне более полезную ошибку, или еще лучше попросило меня ввести пароль ssh.

Ответ 17

У меня была такая же проблема, и через некоторое время я увидел, что я под пользователем root (с sudo -s). Пусть это поможет кому-то.

Ответ 18

Если после команды "git push origin master" вы видите ошибку "не удалось прочитать из удаленного репозитория", попробуйте это

1.ssh-keygen -t rsa -b 4096 -C "youremail"
2.eval $(ssh-agent -s)
3.ssh-add ~/.ssh/id_rsa
4.clip < ~/.ssh/id_rsa.pub(it copies the ssh key that has got generated)
5.then go to your remote repository on github and goto settings-> SSH and GPG keys ->new SSH key ->enter any title and paste the copied SSH key and save it
6. now give git push origin master 

Ответ 19

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

Если вы используете GitHub или Bitbucket, вы можете легко проверить статус на

https://status.github.com/messages или https://status.bitbucket.org/

enter image description here

Ответ 20

У меня есть эта ошибка после смены компьютеров. Я использую SourceTree с Bitbucket.

Поэтому мне пришлось добавить SSH-ключ, сгенерированный SourceTree, на новом компьютере, в настройках Bitbucket Settings > Security > SSH, а затем подключиться к моей учетной записи Bitbucket в Интернете.

Ответ 21

Я решил эту проблему, перезапустив терминал (откройте новое окно/вкладку).

Так что, если вы действительно не хотите/не должны понимать основную проблему, стоит попробовать метод тестирования, прежде чем копать глубже :)

Ответ 22

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

Используйте эту команду из командной строки: sudo xcodebuild -license

Ответ 23

Я просто хотел поделиться тем, что нашел легкое решение для этого:

Доступ запрещен. fatal: Не удалось прочитать из удаленного репозитория. Убедитесь, что у вас есть правильные права доступа и существует репозиторий.

просто выйти из gitlab и снова войти. Затем проблемы должны быть исправлены.

Ответ 24

При использовании putty/pageant убедитесь, что вы не забыли добавить правильный SSH-ключ к конкурсу, иначе появится эта ошибка. DUH

Ответ 26

Перейдите к терминалу MINGW32, поставьте эту команду: git branch --set-upstream-to = origin/(название ветки)

Ответ 27

Если вы все еще получаете ту же ошибку, убедитесь, что для параметра git settings- > ssh tab- > ssh для использования установлено значение openSSH введите описание изображения здесь

Ответ 28

У меня была такая же ошибка, которая привела меня к этому ответу, который мне не помог. Я пытался создать новый "голый" репозиторий в первый раз, используя приведенные ниже команды для отслеживания местоположения NTFS:

cd myrepository
git init --bare \\myserver.mycompany.local\myrepository.git
git init
git status
git add .
git status
git commit -m "Initial Commit"
git remote add origin \\myserver.mycompany.local\myrepository.git
git push -u origin master
git status

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

Мне пришлось удалить начало координат, используя:

git remote rm origin

Затем добавьте начало координат, используя ожидаемую косую черту

git remote add origin //myserver.mycompany.local/myrepository.git

Надеюсь, это поможет кому-то в будущем.

Ответ 29

Согласно моему опыту, одна из причин возникла эта проблема, потому что у вас есть нестабильное интернет-соединение.

Ответ 30

Я столкнулся с той же проблемой; просто вы можете запустить это в своем командном окне:

git remote add origin https://your/repository/url