mac出现Enter passphrase for key的解决方案
刚进入新公司,第一次用Mac开发,因为电脑是前同事的,所以要把各种配置和git的配置换成自己的,由于秘钥更改没有一次性改好,在网上寻找了一些答案,自己总结下经验,防止以后遇到同样的问题。
公钥 私钥
当我们关联好自己的git时,发现每次pull 或 push代码时会让我们重复性输入自己的密码,问题不是出在我们关联的不对,而是对git的公钥和私钥了解并不深,使用命令ssh-keygen,默认生成的公钥名为id_rsa.pub ,私钥名为id_rsa。
$ cat id_rsa.pub
WXiangQiandeMacBook-Pro:.ssh $ cat id_rsa.pub
ssh-rsa ********yc2EAAAADAQABAAACAQDGTX8c2e7jJv+ffKIoaMQgvaz6L4vO/b2acB9oYTZaihE2Bj6yO6osoAxitmzAvL9nOsbBnTciYsD/6dNj8mJr3ccQIbfFxcx6+1rGMonlhz1LLAaiHlwqQR8RECSYM39XNH4SN8+2yUQbLSdQKC0mIKhXMJu4FUJ37yqQFVV8g2FIzijqqtTIhA9IMCZ7UY9SfRNwZ6bcSVW2vHMvbXTmrr899eH+7FIupNByRp+PndfyYKXvjF4QlhvQUBHL7DmgOc2sMrJXyD6CI74+rhWG4R1wZWsM0Y3+Ecq6ImDA3f0Lh52ytDOIdM89tO4y+3LUDWIB8r6G0BzMaiXfRDHLjoKYSo0t6wGwtcKJapLQmbxI/Ww0RBHeRQiDw+rsl7XbswXTI9WSupQ+R0k87h6p8VUZrQSZGE0ne6TWUtTAzAgG14mom8lBy+3F6eeFg2n2CRJwT8EAgYAKkNotXfcYI+AOx/rKsuT006sggMl73If4Ru5hKApJ7RngffhZTXK3+V5ghfOUuG/bDchEleUKUryqOf2bXz8fCZxyEeBXVtgTovFA2k84iAqkSFqWjrKhmogOEOuicGN4SN2jFoGfNYMV0HDTPNZkjJA6TB8mplBKOf8TqvneWB8hY10z7F0zOExXVoiUY0kF49ZjAcbJmC/9v9SqHqicb87tAx/P4w== “wangxiangqian@****.cn”
解决
终端提示:Enter passphrase for key,表示我们对自己的git使用了私钥,在公钥的基础上又加了一道保障,所以会出现重复性输入密码,切换到文件cd ~/.ssh下会有id_rsa,id_rsa.pub,known_hosts三个文件,使用命令rm id_rsa* 删除我们的私钥,cd … 切换目录,执行ssh-keygen -t rsa -C “你的邮箱” -b 4096一路回车键,出现
+---[RSA 4096]----+
| .o.|
| . .oo |
| . + .= +|
| .. . **+*.|
| . ..S o.OX. |
|o .. ..+ .B* |
|....o.. oo. |
|=...+. E |
|+oo=o. |
+----[SHA256]-----+
然后重新进入cd ~/.ssh该文件,执行cat id_rsa.pub将出来的那一串编码复制粘贴到你的远程git上建立关联,完成。
其他
以上是我开发中遇到的问题,查阅过一部分资料没有得到实际性的解决。如果上述还是没有解决,尝试一下其他人的办法,依旧是在本地执行ssh-a -K回车输入自己的密码,或者依次执行eval ssh-agent ssh-add命令,这些命令只能解决在你当前开机的状态下,不在输入你的git密码,在你再次关闭你的设备、重启之后,依旧会提示你输入,不妨试试上面的解决办法。