140 votes

"git push" produit Gtk-WARNING

J'ai travaillé sur mon projet à distance par le biais de la ligne de commande sur une machine à laquelle je n'ai pas les droits admin et après l'exécution d' git push origin master je reçois le message d'erreur suivant:

(gnome-ssh-askpass:29241): Gtk-WARNING **: cannot open display:

Mon .git/config le fichier a le contenu suivant:

    [core]
       repositoryformatversion = 0
       filemode = true
       bare = false
       logallrefupdates = true 
    [remote "origin"]
       fetch = +refs/heads/*:refs/remotes/origin/*
       url = https://username@github.com/username/repository.git 
    [branch "master"]
       remote = origin
       merge = refs/heads/master

J'obtenais l'erreur 403 plus tôt. Suivant le commentaire ici, j'ai mis mon nom d'utilisateur avant le signe @ dans l'url distante et depuis, j'ai été faire du Gtk erreur.

Quand je me connecter à la machine à l'aide d' ssh -X et d'essayer de pousser, j'obtiens l'erreur suivante:

X11 connection rejected because of wrong authentication.
(gnome-ssh-askpass:31922): Gtk-WARNING **: cannot open display:localhost:10.0

Si je change l'url de la télécommande pour git@github.com:username/repository.git, alors l'erreur est:

ssh: connect to host github.com port 22: Connection timed out
fatal: The remote end hung up unexpectedly

Savez-vous comment résoudre ce problème?

344voto

John Manak Points 2923

J'ai enfin découvert une solution au problème. Comme il a été décrit ici, j'ai exécuté la commande suivante dans le terminal:

  unset SSH_ASKPASS

et puis en exécutant git push origin master fonctionne comme il le devrait. Vous pouvez également ajouter la ligne à votre .bashrc le fichier.

19voto

eikonomega Points 498

J'ai récemment abordé ce problème sur une RedHat 5 machine où notre version Git a été 1.7.4.1.

Je n'ai pas un haut degré de confiance que l' unset SSH_ASKPASS n'ont pas de conséquences imprévues, donc je voulais voir si il y avait une autre solution.

Je ne pouvais pas dire avec certitude, mais il semble qu'un correctif pour ce problème était dans les travaux autour de la même heure que notre version de Git a été publié. Donc, il me semblait qu'il était raisonnable d'espérer qu'une version plus récente de corriger le comportement.

Et en effet il l'a fait. La mise à niveau vers la 1.8 branche Git et le problème est résolu. Le message d'erreur est toujours affiché pour une raison étrange, mais vous êtes correctement invité à entrer votre mot de passe et a permis de continuer.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X