2011-12-13 12 views
5

Jestem w stanie używać ssh (np. Dla 'git' z heroku lub github itp.) Przez GitBash, ale nie mogę zrobić tego samego z wiersza poleceń Windows cmd na ta sama maszyna. Jaki może być problem? Jeśli dobrze pamiętam, to działało z polecenia cmd.Wydanie ssh na Windows 7 (gitbash vs. windows cmd)

Błąd Dostaję jest:

Permission denied (publickey). fatal: The remote end hung up unexpectedly 

mam oba dzienniki: tutaj jest ostatni cztery linie z cmd, które różnią się od '' git bash:

debug1: Trying private key: /.ssh/identity 
debug1: Trying private key: /.ssh/id_rsa 
debug1: Trying private key: /.ssh/id_dsa 
debug1: No more authentication methods to try. 
Permission denied (publickey). 

w przypadku git Bash: poszczególne linie są:

debug1: Trying private key: /c/Users/user1/.ssh/identity 
debug1: Offering public key: /c/Users/user1/.ssh/id_rsa 
debug1: Remote: Forced command: gerve user1 
debug1: Remote: Port forwarding disabled. 
debug1: Remote: X11 forwarding disabled. 

Rozwiązane

Jak zasugerował przez @snemarch, ustawienie następujących env var rozwiązać mój problem:

set HOME=C:\Users\user1 
+0

Jaki jest błąd, który otrzymujesz. Nie możesz po prostu powiedzieć "Nie mogę zrobić tego samego". Podaj jakiś szczegół – manojlds

+0

Niestety, tutaj jest błąd. __ Odmowa uprawnień (publickey). fatal: zdalny koniec zawiesił się niespodziewanie. ---- –

Odpowiedz

8

Ponieważ jesteś używając GitHub, od cmd spróbuj

ssh -v -T [email protected] 

Zobacz wyświetlane klucze. Może spróbuj z Git Bash i porównaj dane wyjściowe.

Może to być spowodowane tym, że% HOME% nie jest poprawnie ustawiony. Ustaw go w katalogu zawierającym katalog .ssh (i tym samym klucze)

+0

Dodałem dzienniki do mojego pytania. Nie jestem pewien, jak to naprawić. –

+0

@AsadIqbal - Czy to rozwiązało? Dlaczego się zgodziłeś? – manojlds

+0

To nie rozwiązało dokładnie mojego problemu, ale wskazało mi kierunek. Właśnie zaktualizowałem moje pytanie do rezolucji. –

0

bym dokładnie sprawdzić ścieżkę System zawiera odniesienie do lokalizacji git/bin

1

Spójrz na ścieżki plików - "/.ssh/identity", w przypadku cmd.exe, prawdopodobnie nie jest to miejsce, w którym znajduje się użytkownik twoje klucze SSH :). Prawdopodobnie jest tak, że rozszerzenie homedir jest wykonywane, gdy jesteś na git-bash, ale nie na natywnym cmd.exe.

Zamiast używać cygwin ssh i zwykłych plików kluczy ssh, rozważ użycie funkcji PuTTY dla programu SSH i sonda page dla ssh-agent.