git produces Gtk-WARNING: cannot open display

I’ve been working on my project remotely through the command line on a machine to which I don’t have admin rights and after running git push origin master I get the following error message:

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

My .git/config file has the following contents:

  • GIT clone issue in Jenkins Permission Denied
  • git log shows only the most recent revision of a file
  • git failing to find the index when in submodule (“index file open failed: not a directory”)
  • Duplicate commits in git branch after rebase / pull request workflow on bitbucket
  • Why don't Git refs have a file extension
  • Git : Do not allow users to push a new branch to remote repo
  •     [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
    

    I was getting the 403 error earlier. Following the comment here, I put my username before the @ sign in the remote url and since then, I’ve been getting the Gtk error.

    When I login to the machine using ssh -X and try to push, I get the following error:

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

    If I change the url of the remote to git@github.com:username/repository.git, then the error is:

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

    Do you know how to fix this?

  • Advice for using Git to manage website development?
  • setting up TeamCity to pull multiple git repos with named locations
  • How to collaborate in a project using Git without using Github?
  • How do I undo tracking a remote branch in git?
  • How to auto-configure git merge tool based on what is available on current machine?
  • How to mirror a git repository safely?
  • 3 Solutions collect form web for “git produces Gtk-WARNING: cannot open display”

    I have finally discovered a solution to the problem. As it was described here, I ran the following command in the terminal:

      unset SSH_ASKPASS
    

    and then running git push origin master works the way it should. You can also add the line to your .bashrc file.

    I recently dealt with this behavior on a RedHat 5 machine where our Git version was 1.7.4.1.

    I didn’t have a high degree of confidence that unset SSH_ASKPASS wouldn’t have unintended consequences, so I wanted to see if there was another solution.

    I couldn’t tell for certain, but it seems that a patch for this problem was in the works around the same time that our version of Git had been published. So, it seemed to me that it was reasonable to hope that a more recent version would correct the behavior.

    And indeed it did. Upgrading to the 1.8 branch of Git resolved the problem. The error message is still displayed for some odd reason, but you are correctly prompted for your password and allowed to continue.

    None of these answers worked for me (ssh’ing via Cygwin on Windows 10 into a RHEL 6.8 server and trying to clone a github.com repo from the RHEL box) so what I did was clone via an SSH key rather than HTTPS username/password. e.g. I used git@github.com:MyUsername/myproject.git rather than the https url. I also appropriately uploaded my public key into Github. This method worked fine.

    Note: Of the above solutions, I actually didn’t try upgrading to the 1.8 branch of git

    Git Baby is a git and github fan, let's start git clone.