Git push работает в Git Bash, но не в SmartGit или TortoiseGit. - PullRequest
1 голос
/ 01 января 2012

Итак, я создал репо с помощью Git Bash, и оно работает (локальное и удаленное репо на github.com). Я отправил файл README для тестирования, и это сработало. В моем конфиге все выглядит нормально:

[core]
    repositoryformatversion = 0
    filemode = false
    bare = false
    logallrefupdates = true
    symlinks = false
    ignorecase = true
    hideDotFiles = dotGitOnly
[gui]
    pruneduringfetch = true
    encoding =
[remote "origin"]
    url = git@github.com:SOME_USERNAME/some-project-name.git
    fetch = +refs/heads/*:refs/remotes/origin/*
[branch "master"]
    remote = origin
    merge = refs/heads/master

А $ ssh -V git@github.com дает:

Здравствуйте, SOME_USERNAME! Вы успешно прошли аутентификацию, но GitHub делает не обеспечивает доступ к оболочке.

И я могу загружать файлы и все, но только через Git Bash. Тем не менее, я пытался работать, и это выдало мне следующую ошибку:

Удаленный конец неожиданно зависает

Когда я вручную изменил «исходный» URL на этот:

https://SOME_USERNAME@github.com/SOME_USERNAME/some-project.git

Это сработало. Так что он не работает с "git @ ...", но работает с "https: // ..". Я пробовал другую программу - SmartGit. Это также дает мне

Дистанционный конец неожиданно повесил трубку

но когда я пытаюсь сделать этот "трюк с изменением URL" в SmartGit, для "https: // ..." выдается следующая ошибка:

Push: аутентификация не удалась

Аутентификация не удалась Настройка удаленного

Настройка пути удаленного обслуживания не поддерживается протоколом.

Я полностью потерян со всем этим. Что я делаю не так?

Ответы [ 3 ]

2 голосов
/ 01 января 2012

Попробуйте запустить SmartGit от имени администратора.

1 голос
/ 01 января 2012

SSH будет искать ключи в %HOME%/.ssh, который ("HOME") не всегда определен (msysgit определит его по умолчанию, может быть, TortoiseGit, но вы можете указать ваши ключи ssh ,вероятно, нет SmartGit )

Поэтому перед запуском SmartGit убедитесь, что для HOME установлено значение %userprofile%.

0 голосов
/ 01 января 2012

Тот факт, что он не работает с URL-адресом «git @», но работает с «https», показывает, что это связано с настройкой ключа SSH. Убедитесь, что вы выбрали опцию «OpenSSH» (а не PUTTY) для TortoiseGit, и на странице настроек для TortoiseGit убедитесь, что раздел «Удаленный» указывает на место, где находятся ваши ключи.

...