在沪务工的Polk、互拍👏👏👏
【技术】Mac版SourceTree管理多个SSH秘钥
背景
在使用windows版本的sourceTress时,那是相当的完美,得益于它有个ssh管理插件,把所有相关的ssh秘钥填进去就可以。
缺点就是每次电脑重启了都得重新导入一下ssh秘钥,办公电脑基本从来不关的,所以一直这样使用的得心应手。
但是mac版本没有ssh插件,这很头大,一直通过https使用,但前不久github取消了https,棘手了。 今天测试了一下午,总算弄好了。
我来总结一下使用mac版的sourceTree管理ssh秘钥的三板斧
1、通过sourceTree的账户功能创建秘钥
因为它这个功能会在~/.ssh/下创建好文件,并且在~/.ssh/config文件配置基本格式,就像下面这样,对了,密码是可选的,别设了,徒增麻烦~
# --- Sourcetree Generated --- Host GitHub HostName github.com User 用户名 PreferredAuthentications publickey IdentityFile /Users/a/.ssh/私钥文件 UseKeychain yes AddKeysToAgent yes # ---------------------------- # --- Sourcetree Generated --- Host GitLab HostName 公司gitLab的域名 User 公司gitLab的用户名 PreferredAuthentications publickey IdentityFile /Users/a/.ssh/私钥文件 UseKeychain yes AddKeysToAgent yes # ----------------------------
还有一点,就是创建账号功能,使用时输入的秘密是登录gitLab后的私钥,gitHub则可以通过OAuth验证
2、上传公钥到github
通过sourceTree的账户功能创建秘钥后保存会自动上传到gitHub,gitLab。如果失败也可以手动上传,上传~/.ssh/xxx.pub 文件。
3、拉代码输入yes
当前两步设置好了,注意域名要正确,我严重怀疑sourceTree去匹配ssh秘钥的时候是根据域名的,你的git仓库地址是什么,它就去找对应地址的ssh秘钥。
当通过sourceTree拉代码的时候,就会提示输入密码,我忘了截图,反正会弹出一个丑陋的提示框,大致意思需要github.com的密码,你可以试试常用的密码,如果不行,输入yes试试吧,反正我就这么通过了。。。有些翻译真会产生歧义,影响效率
突然发现不行了,漏了: ssh-add -K ~/.ssh/公钥
喜欢我的文章吗?
别忘了给点支持与赞赏,让我知道创作的路上有你陪伴。
发布评论…