Mac sourcetree自动添加ssh key

给Mac重装了系统, 之前的所有设置都没了.在安装了sourcetree之后在公司的gitlab上添加好创建的ssh key的公钥. 但是在拉取和推送的时候总是报Permission denied (publickey,gssapi-keyex,gssapi-with-mic,password).这样的错误!

Mac sourcetree自动添加ssh key_第1张图片
image

而且在.ssh目录下执行完ssh-add ~/.ssh/id_rsa或者ssh-add -K ~/.ssh/id_rsa之后, 每次重启都要重新执行一下这样的命令才行, 这显然是无法忍受的.

看了在网上看了很多文章都无法解决
后来在这里找到了解决办法:https://www.shintaku.cc/posts/ssh-add/
现摘录如下:

自从macOS升级到Sierra 10.12以后ssh-agent不会自动加载密码短语了,每次重启后ssh登机器时总是提示输入密钥的密码短语,所以每次开机都要用ssh-add -K ~/.ssh/id_rsa将它手动添加到钥匙串中才行。
后来在GitHub找到了解决方案,其实就是简单配置了一下~/.ssh/config

Host *
   UseKeychain yes
   AddKeysToAgent yes
   IdentityFile ~/.ssh/id_rsa
   IdentityFile ~/.ssh/github_rsa

用IdentityFile指定要自动添加的密钥即可。

现在终于可以愉快的coding了!

补充:

假如你拿到的是一台全新的机器, 那么你要按照下面的操作步骤进行:

  1. 生成sshkey
  2. 执行ssh-add ~/.ssh/id_rsasshkey添加到sourceTree
  3. 执行ssh-add -K ~/.ssh/id_rsasshkey添加到钥匙串
  4. cd.ssh目录下, 用touch config命令创建config文件
  5. 执行open config, 打开config文件.
  6. 输入上面的配置内容, 保存·config文件

以后每次启动电脑source tree都会自动加载sshkey.

转载:https://www.jianshu.com/p/c0d5e649411f

你可能感兴趣的:(Mac sourcetree自动添加ssh key)