How do I connect IntelliJ to GitHub using SSH

前端 未结 5 1956
后悔当初
后悔当初 2020-12-28 16:25

I have successfully configured my GitHub client to use SSH, and received the confirmatory email from GitHub that a new SSH key was added. I would like to setup IntelliJ to u

相关标签:
5条回答
  • 2020-12-28 16:44

    The answer above by kukido seems to now be out of date; the IntelliJ UI no longer provides the same level of access to the github URL. And, the default "built-in" (to IntelliJ) ssh executable seems to not respect the .ssh/config file settings. What I have found now works is to switch from using the built-in ssh executable to the "native" ssh executable. This is done by visiting Settings... | Version Control | Gitand then choosing Native in the SSH executable pulldown menu.

    This applies to IntelliJ version 2016.2 and I'm pretty sure earlier versions such as 2016.1 and the 2015 series.

    0 讨论(0)
  • 2020-12-28 16:45
    • Open Git Bash and create a new ssh key using your GitHub email address like this:

      ssh-keygen -t rsa -b 4096 -C "your_email@example.com"

    • Then it asks you a file path for saving the key. You can simply accept the default by pressing Enter.

    • You then will be asked for a passphrase. Make sure you remember it as you may need it at the time you want to push your project's changes to GitHub.
    • Ensure your ssh agent is running. For that you can enter the following command

      eval $(ssh-agent -s)

    • Now add your SSH private key to the ssh-agent like this:

      ssh-add ~/.ssh/id_rsa

    • Now go to your GitHub profile and select setting->SSH and GPG keys. Select New SSH Key and after entering a title, copy your key using this command :

      clip < ~/.ssh/id_rsa.pub

    • Finally go to the Git setting of IntelijIDEA and select Built-in for SSH executable.

    • You can try to see if everything works fine by pushing your project to GitHub. You will be asked for the passphrase you entered when creating ssh key.

    0 讨论(0)
  • 2020-12-28 16:53

    Steve Byrne is right about the changes to this procedure. As I do not have enough reputation to comment, I would like to add to his answer that I could only make this work with Github when inputing the SSH URL in the prompt for cloning a repo. You can get your repo's SSH URL by clicking on "Clone or Download" and then "Use SSH" on Github, like so:

    0 讨论(0)
  • 2020-12-28 16:57

    GitHub plugin for IntelliJ lets you to save the password, so you don't have to enter it every time.

    enter image description here


    With keys

    (adapted from Multiple SSH Keys settings for different github account, thanks to CrazyCoder comment):

    • Create ssh key pair

      $ ssh-keygen -t rsa -C "activehacker@youremail.com"
      
    • Add key

      $ ~/.ssh/id_rsa_activehacker
      
    • Confirm that the key is added

      $ ssh-add -l
      
    • Modify ~/.ssh/config

      Host github.com-activehacker  
      HostName github.com  
      User git  
      IdentityFile ~/.ssh/id_rsa_activehacker
      


    In IntelliJ

    VCS > Checkout from Version Control > Git

    Checkout from Version Control

    Test

    Test

    As you can see, you will still have to either enter passphrase for the key pair after every IntelliJ relaunch(I believe the passphrase is kept in memory) or let IntelliJ to store it permanently.

    0 讨论(0)
  • 2020-12-28 16:58

    Using IntelliJ 2016.3.3 this seems very straight forward by following the steps below:

    1. Generate your keypair to use, if none exists already with

    ssh-keygen

    1. Add the key to your github profile as per https://help.github.com/articles/adding-a-new-ssh-key-to-your-github-account/

    2. Modify the settings in IntelliJ under | VersionControl > GitHub

    Tick 'Clone git repositories using ssh'

    Choose 'Native' as 'SSH executable'

    0 讨论(0)
提交回复
热议问题