Beim SSH-Verfahren in Cygwin treten Git-Upload-Pack-Fehler auf. In Cygwin werden Pfade in einer *Nix-Umgebung sshd
nicht wie erwartet übernommen ..bash_profile
Wie lässt sich dies beheben und dafür sorgen, dass msysgit ordnungsgemäß mit Cygwin Bash und Cygwin SSH funktioniert?
Antwort1
Ich habe überall nach Leuten gesucht, die wie ich Fehlermeldungen vom Typ „Git-Upload-Pack fehlt“ bekommen, und bin dabei auf Folgendes gestoßen.
Im Grunde wird dadurch nur der SSH-Pfad von Cygwin so eingestellt, dass msysgit darin enthalten ist.
Installieren Sie msysgit (nur git bash zu verwenden sollte ausreichen, wir brauchen das git.cmd-Ding für Cygwin nicht)
Installieren Sie Cygwin, suchen Sie nach SSH und aktivieren Sie es.
ssh-host-config -y
Ich habe mir nicht die Mühe gemacht, die CYGWIN-Variable auf irgendetwas zu setzen, die Standardwerte schienen richtig.
cygrunsrv.exe -R sshd
Entfernen Sie den im Prozess erstellten Dienst.
ssheNv="/usr/bin:/bin:/cygdrive/c/WINDOWS/system32:/cygdrive/c/WINDOWS:/cygdrive/c/WINDOWS/System32/Wbem:/bin"
mSysgit="/usr/local/bin:/c/WINDOWS/system32:/c/WINDOWS:/cygdrive/c/Program Files/Git/bin:/cygdrive/c/Program Files/Git/libexec/git-core"
Fügen Sie nun diese beiden Zeichenfolgen zum folgenden Pfad hinzu:
cygrunsrv -I sshd -d "CYGWIN sshd" -p /usr/sbin/sshd -a -D -e "PATH=$ssheNv:$mSysgit"
cygrunsrv.exe -S
Starten Sie den Dienst (verwenden Sie -E, um ihn bei Bedarf wieder zu stoppen)
von einem anderen PC mit msysgit
git clone ssh://dude@hostIPetc'/Documents and Settings/blabla/myrepo.git'
Für die Leute, die es nicht in ihrem Pfad hatten, git-upload-pack
ist das hier das Problem. Ich muss Cygwin Git nicht installieren, nur um Pfade zu erstellen!
Frage: Kann jemand herausfinden, wie man auf Cygwin-Pfade wie „/cygdrive/d/“ usw. verweist? Im Moment funktioniert nur / und das bedeutet C:\
Wenn irgendjemand der Meinung ist, dass das alles zu schlampig ist und man einfach Cygwin Git verwenden sollte, sagen Sie es bitte.
Hmmhttp://www.grumpydev.com/2011/01/19/switching-from-cygwin-to-msysgit-git-thinks-everything-has-been-modified/ MSysGit „fälscht“ Dateimodi. Ist das ein Grund, zu Cygwin zu wechseln, oder ist es unter Windows hilfreich …