Использование git с ssh-агентом в Windows

Я на Windows. Я установил git и posh-git (некоторые помощники для Windows PowerShell). Я могу добавить ключи с ssh-add и может аутентифицироваться с github и моим веб-сервером. Я также могу использовать Git из PowerShell для взаимодействия с хранилищами.

но есть одна вещь, которую я не могу сделать: я использую git-plus для редактора Atom. И я не могу заставить его нажать на мое РЕПО. В чем моя проблема?

2 ответов


шикарный-git и git для windows 2.7 должно включать все, что вам нужно, чтобы настроить ssh-agent. После установки модуля вы можете запустить агент, используя что-то вроде:

Import-Module ~\Documents\WindowsPowerShell\Modules\posh-git\posh-git
Set-Alias ssh-agent "$env:ProgramFiles\git\usr\bin\ssh-agent.exe"
Set-Alias ssh-add "$env:ProgramFiles\git\usr\bin\ssh-add.exe"
Start-SshAgent -Quiet

затем вы должны увидеть, что переменная среды SSH_AUTH_SOCK установлена:

C:\Code\Go\src\bosun.org\cmd\scollector [master]> gci env:SSH_AUTH_SOCK

Name                           Value
----                           -----
SSH_AUTH_SOCK                  /tmp/ssh-6ORcVQvRBZ2e/agent.11668

который пакет git-plus atom должен иметь возможность использовать при выполнении команд. Я смог использовать Ctrl+Shift+H для вызова меню git в atom, выберите push, а затем нажмите на удаленное РЕПО (не он не отображает ошибки, если он терпит неудачу, но новая ветвь, которую я нажал, была там).

ssh-agent должен быть запущен перед открытием atom, чтобы была установлена переменная среды SSH_AUTH_SOCK. Если он все еще не работает, вы можете протестировать ssh в PowerShell, чтобы убедиться, что он может подключаться без пароля:

Set-Alias ssh "$env:ProgramFiles\git\usr\bin\ssh.exe"
ssh hostname

проблема в том, что git не смог найти ssh_agent.exe, который предоставил учетные данные Шаги, которые я следовал приведены ниже

  1. поискал ssh_agent.exe файл диск
  2. добавлен путь как путь среды в профиле.пример.ps1 файл

$env:path += ";" + "C:\Program Files\Git\usr\bin"