Ich habe über die Befehlszeile auf einem Computer, für den ich keine Administratorrechte habe, remote an meinem Projekt gearbeitet. Nach dem Ausführen wird git push origin master
die folgende Fehlermeldung angezeigt:
(gnome-ssh-askpass:29241): Gtk-WARNING **: cannot open display:
Meine .git/config
Datei hat folgenden Inhalt:
[core] repositoryformatversion = 0 filemode = true bare = false logallrefupdates = true [remote "origin"] fetch = +refs/heads/*:refs/remotes/origin/* url = https://[email protected]/username/repository.git [branch "master"] remote = origin merge = refs/heads/master
Ich habe den 403-Fehler früher erhalten. Nach dem Kommentar hier habe ich meinen Benutzernamen vor das @ -Zeichen in der Remote-URL gesetzt und seitdem erhalte ich den Gtk-Fehler.
Wenn ich mich mit dem Computer anmelde ssh -X
und versuche zu pushen, wird folgende Fehlermeldung angezeigt:
X11 connection rejected because of wrong authentication.
(gnome-ssh-askpass:31922): Gtk-WARNING **: cannot open display:localhost:10.0
Wenn ich die URL der Fernbedienung in ändere [email protected]:username/repository.git
, lautet der Fehler:
ssh: connect to host github.com port 22: Connection timed out
fatal: The remote end hung up unexpectedly
Wissen Sie, wie Sie das beheben können?
git
version-control
github
ssh
John Manak
quelle
quelle
git push origin master
, damit ich nicht weiß, wie ich das anwenden soll, was du sagst?[email protected]:username/repo.git
oderhttps://github.com/username/repo.git
Sie verwenden jedoch eine Mischung aus beiden.ssh -X
, aber das hat auch nicht geholfen. Siehe die aktualisierte Frage oben.Antworten:
Ich habe endlich eine Lösung für das Problem gefunden. Wie hier beschrieben , habe ich im Terminal den folgenden Befehl ausgeführt:
und dann läuft
git push origin master
das Laufen so, wie es sollte. Sie können die Zeile auch zu Ihrer.bashrc
Datei hinzufügen .quelle
error: RPC failed; result=22, HTTP code = 417
Ich habe mich kürzlich mit diesem Verhalten auf einem RedHat 5-Computer befasst, auf dem unsere Git-Version 1.7.4.1 war.
Ich hatte kein hohes Maß an Vertrauen,
unset SSH_ASKPASS
das keine unbeabsichtigten Konsequenzen hätte, also wollte ich sehen, ob es eine andere Lösung gibt.Ich konnte es nicht mit Sicherheit sagen, aber es scheint, dass ein Patch für dieses Problem ungefähr zur gleichen Zeit in Arbeit war, als unsere Version von Git veröffentlicht wurde. Es schien mir also vernünftig zu hoffen, dass eine neuere Version das Verhalten korrigieren würde.
Und tatsächlich tat es das. Ein Upgrade auf den 1.8-Zweig von Git hat das Problem behoben. Die Fehlermeldung wird aus irgendeinem Grund immer noch angezeigt, aber Sie werden korrekt zur Eingabe Ihres Kennworts aufgefordert und dürfen fortfahren.
quelle
Keine dieser Antworten funktionierte für mich (ssh'ing über Cygwin unter Windows 10 in einen RHEL 6.8-Server und der Versuch, ein github.com-Repo aus der RHEL-Box zu klonen). Ich habe also über einen SSH-Schlüssel und nicht über einen HTTPS-Benutzernamen geklont. Passwort. Beispiel: Ich habe [email protected]: MyUsername / myproject.git anstelle der https-URL verwendet. Ich habe auch meinen öffentlichen Schlüssel entsprechend in Github hochgeladen. Diese Methode hat gut funktioniert.
Hinweis: Von den oben genannten Lösungen habe ich eigentlich nicht versucht, ein Upgrade auf den 1.8-Zweig von git durchzuführen
quelle
Sie können auch versuchen, sich mit ssh -Y beim Remote-Server anzumelden, damit das Dialogfeld grafisch angezeigt wird.
Wie beim OP funktionierte die Anmeldung über ssh -X nicht. Beim Push-Versuch wiederholte der Server einfach die gleiche Fehlermeldung -
(gnome-ssh-askpass:29241): Gtk-WARNING **: cannot open display:
- wie bei der Protokollierung über ssh ohne X11-Weiterleitung. Dies ist ein etwas anderes Verhalten als das, was der OP gemeldet hat, als er ssh -X ausprobiert hat, da sich seine Fehlermeldung geringfügig geändert hat, als er nur ssh verwendet hat.Nachdem ich mich jedoch mit ssh -Y angemeldet hatte: Es gab keinen Fehler, das Dialogfeld für das Kennwort wurde angezeigt, ich gab das Kennwort ein und GitHub akzeptierte den Push.
Als Warnung kann ssh -Y Sicherheitsprobleme verursachen, wenn Sie den Remote-Server als vertrauenswürdigen Client behandeln ( /ubuntu/35512/what-is-the-difference-between-ssh-y- Trusted-x11-Forwarding-and-SSH-XU ). Seien Sie also vorsichtig, wenn Sie es verwenden.
quelle