Git Issue [Windows]: git push фатальная ошибка. GitBash и cmd не синхронизированы

Я новичок в Git. Я пытаюсь перенести мой новый проект в репозиторий Bitbucket, но, похоже, он не работает. Я правильно добавил ключ ssh и запустил:

git remote add origin git@bitbucket.org:<username>/hello-app.git

имя пользователя было заменено моим именем пользователя...

Кажется, это сработало, как когда я запустил это снова. Он гласит "фатально: удаленное происхождение уже существует".

Вывод консоли из запуска push выглядит следующим образом:

C:\rails-dev\hello-app>git push -u origin --all
no such identity: /c/Users/Christopher/ssh/id_rsa: No such file or directory
Permission denied (publickey).
fatal: Could not read from remote repository.

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

Репозиторий существует в bitbucket и не имел проблем с выполнением локальных команд. Просто команда git push. Я видел много вопросов на этом сайте и пробовал решения безрезультатно.

В настоящее время мой git устанавливается через RailsInstaller. Приведенные выше команды выполняются в обычной командной строке, а не в оболочке GitBash.

редактировать: вывод "git remote -v"

C:\rails-dev\hello-app>git remote -v
origin  git@bitbucket.org:c_parry/hello-app.git (fetch)
origin  git@bitbucket.org:c_parry/hello-app.git (push)

edit 2: вывод работающего ssh -v -T git@bitbucket.org (в оболочке GitBash)

logged in as c_parry.

You can use git or hg to connect to Bitbucket. Shell access is disabled.

вывод, выполняющий ту же команду в каталоге проекта.

C:\rails-dev\hello-app>ssh -v -T git@bitbucket.org
OpenSSH_6.6.1, OpenSSL 1.0.1i 6 Aug 2014
debug1: Reading configuration data /c/Users/Christopher/.ssh/config
debug1: /c/Users/Christopher/.ssh/config line 1: Applying options for     bitbucket.org
debug1: Connecting to bitbucket.org [104.192.143.2] port 22.
debug1: Connection established.
debug1: identity file /c/Users/Christopher/ssh/id_rsa type -1
debug1: identity file /c/Users/Christopher/ssh/id_rsa-cert type -1
debug1: Enabling compatibility mode for protocol 2.0
debug1: Local version string SSH-2.0-OpenSSH_6.6.1
debug1: Remote protocol version 2.0, remote software version OpenSSH_5.3
debug1: match: OpenSSH_5.3 pat OpenSSH_5* compat 0x0c000000
debug1: SSH2_MSG_KEXINIT sent
debug1: SSH2_MSG_KEXINIT received
debug1: kex: server->client aes128-ctr hmac-md5 none
debug1: kex: client->server aes128-ctr hmac-md5 none
debug1: SSH2_MSG_KEX_DH_GEX_REQUEST(1024<3072<8192) sent
debug1: expecting SSH2_MSG_KEX_DH_GEX_GROUP
debug1: SSH2_MSG_KEX_DH_GEX_INIT sent
debug1: expecting SSH2_MSG_KEX_DH_GEX_REPLY
debug1: Server host key: RSA 97:8c:1b:f2:6f:14:6b:5c:3b:ec:aa:46:46:74:7c:40
debug1: Host 'bitbucket.org' is known and matches the RSA host key.
debug1: Found key in /c/Users/Christopher/.ssh/known_hosts:1
debug1: ssh_rsa_verify: signature correct
debug1: SSH2_MSG_NEWKEYS sent
debug1: expecting SSH2_MSG_NEWKEYS
debug1: SSH2_MSG_NEWKEYS received
debug1: Roaming not allowed by server
debug1: SSH2_MSG_SERVICE_REQUEST sent
debug1: SSH2_MSG_SERVICE_ACCEPT received
debug1: Authentications that can continue: publickey
debug1: Next authentication method: publickey
debug1: Trying private key: /c/Users/Christopher/ssh/id_rsa
no such identity: /c/Users/Christopher/ssh/id_rsa: No such file or directory
debug1: No more authentication methods to try.
Permission denied (publickey).

Я думаю, что мой gitbash и мой cmd не синхронизированы. Но теперь знаете, что проверить или изменить.

2 ответа

Решение

Обновленный ответ:

Глядя на подробное ведение журнала в вашем обновленном вопросе, кажется, что существует несоответствие между каталогом, в который он успешно загружает конфигурационный файл ssh (/c/Users/Christopher/.ssh/), и каталогом, в котором он ищет ключи (/ с / Пользователи / Christopher / SSH /).

Похоже, ваш конфигурационный файл ssh ссылается на каталог без '.' в начале, когда он указывает ключ.

(Я оставил оригинальный ответ ниже на тот случай, если он пригодится кому-то, кто ищет похожие сообщения об ошибках)

Оригинальный ответ:

Сообщение об ошибке "нет такой идентичности: / c / Users / Christopher / ssh / id_rsa: такой файл или каталог отсутствует" говорит о том, что он пытается использовать аутентификацию с открытым ключом через ssh, а файл идентификации, который он ищет, не ' не существует.

По сути, вам нужно создать ssh-идентификатор и загрузить открытый ключ в Bitbucket на соответствующей странице настроек, тогда вам будет хорошо.

На этой странице есть пошаговое руководство: https://confluence.atlassian.com/bitbucket/set-up-ssh-for-git-728138079.html

Если вы не хотите проходить через все это, вы можете подключиться через https, указав соответствующий URL-адрес https в строке "git remote add". URL, вероятно, выглядит примерно так: https: //<имя пользователя>@ bitbucket.org /<имя пользователя />hello-app.git

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

Другие вопросы по тегам