创建ssh key以及免密设置
步骤
1.首先检查你的电脑是否已经有SSH Key?
运行git Bash客户端 ,输入如下代码:
$ cd ~/.ssh $ ls
检查是否已经存在 id_rsa.pub 或 id_dsa.pub 文件,如果已经存在,说明你的电脑已经有 SSH Key,如果有并想重新创建,进入步骤2.否则进入步骤3
2.删除用户文件夹下的.ssh文件夹(C盘)
3.创建SSH Key
-
配置全局的name和email,这里是的你github的name和email。
git config --global user.name "XXX" git config --global user.email "XXXX@XXX.com"
-
生成key
ssh-keygen -t rsa -C "XXX@XXX.com"
-
获取私钥
cat ~/.ssh/id_rsa
-
获取公钥
cat ~/.ssh/id_rsa.pub
把红框部分复制到需要sshkey的地方添加即可;
复制生成后的 ssh key,通过仓库主页 「管理」->「部署公钥管理」->「添加部署公钥」 ,添加生成的 public key 添加到仓库中
添加后,在终端(Terminal)中输入
ssh -T git@gitee.com
首次使用需要确认并添加主机到本机SSH可信列表。若返回
Hi XXX! You've successfully authenticated, but Gitee.com does not provide shell access.
内容,则证明添加成功!
4.解决 git 的Enter passphrase for key ‘/c/Users/Administrator/.ssh/id_rsa’ 问题.(免密设置)
-
避免每次pull或者push都要输入密码,输入以下命令:
ssh-keygen -p [-P old_passphrase] [-N new_passphrase] [-f keyfile] 实例:ssh-keygen -p -P 123456 -N '' -f ~/.ssh/id_rsa
-
打开git的bash命令,输入:
vi ~/.profile
-
输入"i",多行“~~~~~~”上面的插入以下内容:
env=~/.ssh/agent.env agent_load_env () { test -f "$env" && . "$env" >| /dev/null ; } agent_start () { (umask 077; ssh-agent >| "$env") . "$env" >| /dev/null ; } agent_load_env # agent_run_state: 0=agent running w/ key; 1=agent w/o key; 2= agent not running agent_run_state=$(ssh-add -l >| /dev/null 2>&1; echo $?) if [ ! "$SSH_AUTH_SOCK" ] || [ $agent_run_state = 2 ]; then agent_start ssh-add elif [ "$SSH_AUTH_SOCK" ] && [ $agent_run_state = 1 ]; then ssh-add fi unset env
-
按下“ESC”,在命令行下输入“:wq”。退出即可。