赞
踩
关于这个困惑的背景:是在公司下班空余时间学习node.js的时候,准备自己用express快速搭建一个简易博客,想着代码代码能传到自己的仓库,毕竟用的是公司电脑,万一走了,要带走也不方便,就想起了git,然后问题来了:
Git使用https协议,每次pull, push都要输入密码,相当的烦。使用git协议,然后使用ssh密钥。这样可以省去每次都输密码。
然而我只是听过并不懂他们到底是干嘛的,并且怎么去生成……
查了查是这么解释的:
公钥一般是给服务器的,他们在权限中加入我给的公钥,然后当我从远地仓库中下载项目的时候,我在git clone xxx的时候,那个服务器我通过他的绑定的公钥来匹配我的私钥,这个时候,如果匹配,则就可以正常下载,如果不匹配,则失败.
大多数 Git 服务器都会选择使用 SSH 公钥来进行授权。系统中的每个用户都必须提供一个公钥用于授权,没有的话就要生成一个。
整体步骤如下吧:
当然是下载一个git客户端了,这个就不多说,下载安装即可。
然后就是使用命令行终端(下载好的Git Bash)来执行命令生成公钥和密钥了
命令:ssh-keygen -t rsa -C “your_email@example.com”( 你的邮箱),连续点击 Enter 键即可。
ssh-keygen -t rsa -b 4096 -C "your_email@example.com"
# Creates a new ssh key, using the provided email as a label
# Generating public/private rsa key pair.
Enter file in which to save the key (/Users/you/.ssh/id_rsa): [Press enter] // 推荐使用默认地址
Enter passphrase (empty for no passphrase)://此处点击 Enter 键即可,也可以填写密码,填写密码后每次使用 SSH 方式推送代码时都会要求输入密码,由于这个 Key 也不是用于军事目的,所以也无需设置密码。
然后会生成
Your identification has been saved in /Users/you/.ssh/id_rsa.
# Your public key has been saved in /Users/you/.ssh/id_rsa.pub.
# The key fingerprint is:
# 01:0f:f4:3b:ca:85:d6:17:a1:7d:f0:68:9d:f0:a2:db your_email@example.com
以上代码示例是我从coding上copy的,当然我自己已经生成过了,图个方便就用他的示例了
3.在终端输入 open ~/.ssh,用文本编辑器打开『id_rsa.pub』文件,复制全部内容,这个就是公钥了,
接下来你可以把这个公钥部署到coding(码市)或者github上去了。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。