Mac sourcetree自动添加ssh key

Mac sourcetree自动添加ssh key,第1张

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

而且在 .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 :

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

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

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

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

日常工作中难免遇到开发环境中需要配置不同的ssh-key对应不同的环境,如同时在gitlab、github上项目在开发。下面我们来看看具体的 *** 作:

$ ssh-keygen -t rsa -C "youremail@yourcompany.com” -f ~/.ssh/id_rsa_github

在~/.ssh/目录会生成id_rsa_github和id_rsa_github.pub私钥和公钥。 我们将id_rsa_github.pub中的内容粘帖到github服务器的SSH-key的配置中.

$ ssh-add ~/.ssh/id_rsa_github

如果执行ssh-add时提示"Could not open a connection to your authentication agent",可以现执行命令:

$ ssh-agent bash

然后再运行ssh-add命令。

之前尝试过按照网上的方法配置密钥,虽然配置成功了但是每次进行任何 *** 作还是得输入密码(不用输账号,只是输入 .rsa.pub的passphrase),还是很不方便,自己重新配置了下,尝试了一下,不用输密码了。

在有了gitlab账号后:

1.在终端(根目录就行)输入 ssh-keygen -t rsa -C + gitlab上的email。

2.回车之后会让你输入存储id_rsa和id_rsa.pub的目录,不用管直接继续回车即可

3.回车之后会出现让输入密码, 关键的来了,这个密码,不要输入任何东西,直接回车(不然每次进行git和远程仓库有关系的 *** 作的时候都得输入这个密码)。 这两步直接enter之后密钥对就创建成功了

4.接下来去电脑桌面 左上角的前往-前往文件夹

5.点开之后直接在输入框里输入 ~/.ssh 然后回车,就会出现id_rsa和id_rsa.pub两个文件。右键打用文本编辑打开id_rsa.pub,将里面的东西全部复制

6.打开gitlab,点击右上角红框位置打开settings

7.进入settings后,点击左侧SSH Keys

8.把刚才复制的id_rsa.pub里的东西粘贴到1所指的框框里,( title可以随便写,也可以什么都不写)然后点击2指的 Add key

现在就大功告成了,可以不输密码的进行git pull 、push、clone等 *** 作了。


欢迎分享,转载请注明来源:内存溢出

原文地址:https://www.54852.com/bake/7969432.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-12
下一篇2023-04-12

发表评论

登录后才能评论

评论列表(0条)

    保存