Как настроить TortoiseGit для работы с удаленным репо? - PullRequest
0 голосов
/ 09 мая 2018

С момента переустановки моего офисного компьютера у меня возникает проблема с использованием TortoiseGit для доступа (и особенно push) к нашему удаленному серверу.

В моей компании центральное репо поддерживается на удаленном сервере. На моем компьютере с Windows 10 у меня установлены Cygwin, Git и TortoiseGit. У меня также есть доступ к удаленной учетной записи Linux.

Некоторое время назад я генерировал свои открытые и закрытые ключи SSH и использовал их с тех пор. Я регулярно использую терминал Cygwin (bash) для доступа к удаленному репо, и обычно использую TortoiseGit для управления фиксациями и просмотра журналов. В прошлом я также мог использовать TortoiseGit для доступа к удаленному репо, но теперь я не могу заставить его работать.

Когда я настраиваю клиентскую панель Git / Remote для использования HTTP-URL, я могу клонировать репо. Когда я использую URL GIT, меня просят предоставить пароль для удаленного сервера. Я не могу нажать ни с одним URL.

enter image description here

Я использую ключ id_rsa.pub из каталога home/.ssh Cygwin в поле Putty Key (пробовал также закрытый ключ id_rsa). Также на панели Сеть я установил для клиента SSH C:\Program Files\Git\usr\bin\ssh.exe.

Итак, поскольку мой поток bash работает нормально, я предполагаю, что что-то не так с моими настройками TortoiseGit. Есть идеи, что мне не хватает?

1 Ответ

0 голосов
/ 09 мая 2018

Здесь вы смешиваете несколько вещей: Git для Windows, Cygwin и OpenSSH и PuTTY.

  1. У вас есть ключ OpenSSH, поэтому вы не можете использовать PuTTY с TortoiseGit или ввести ключ OpenSSH в поле PuTTY key. (Кажется, вы уже настроили ssh.exe, так что все в порядке - или вам нужно преобразовать ключ OpenSSH в ключ PuTTY, см. https://stackoverflow.com/a/32115724/3906760, чтобы использовать TortoiseGitPLink).

  2. Похоже, у вас установлен Git для Windows, поскольку вы выбрали поставленный ssh.exe из этого пакета. Это может привести к несовместимости. Просто выберите ssh.exe для клиента ssh, чтобы убедиться, что используется ssh.exe из соответствующей установки git.

  3. Мне неясно, какой git.exe используется в TortoiseGit, я предполагаю, что Git для Windows используется, поскольку это рекомендуется для TortoiseGit. Здесь я предполагаю, что проблема, с которой вы сталкиваетесь, заключается в том, что Git для Windows использует %HOME%, отличную от вашей среды Cygwin. Чтобы это исправить, либо скопируйте папку .ssh в домашний каталог Windows, либо явно определите %HOM%E, чтобы указать на домашний каталог Cygwin.

Btw. Cygwin Git не рекомендуется, так как он сломан - он не проходит все тесты Git тестового набора Git (ср. https://stackoverflow.com/a/32427897/3906760).

TLDR: используйте ssh.exe в качестве клиента SSH, убедитесь, что используется правильный git.exe и ваша папка .ssh находится в правильной %HOME%.

...