git Permission denied (publickey), on every connec

2019-03-14 02:25发布

问题:

I try to simplify my work with git, then i try to pull my repository with

git pull

i get "Permission denied (publickey), i solve this by two commands:

1. ssh-agent /bin/bash 

2. ssh-add /root/.ssh/mykey

Enter passphrase for /root/.ssh/mukey * - now i cat use "git pull"

but then i connect next time via ssh i must reenter this two commands again and again

how to make it auto init to skip this steps ?

回答1:

You should have:

  • an ssh config file specifying all the details of your ssh connection.

    cat ~/.ssh/config
    
    Host yourserver
    Hostname upstream.server.com
    User git                          # or the right user account to use on your server
    IdentityFile /root/.ssh/mykey
    
  • change the remote url

    git remote set-url origin ssh://yourserver:yourRepo.git
    
  • add the agent and ssh-add command in your .bashrc or .profile.

    • One approach is described, for instance, in "Configuring Git over SSH".
    • Another approach in "How to run (git/ssh) authentication agent?"

      1. Add a file called .bashrc to your home folder
      2. Open the file and paste in:

        #! /bin/bash 
        eval `ssh-agent -s` 
        ssh-add /root/.ssh/mykey
        


标签: git ssh