GITHUB 提交错误 Error: Permission denied (publickey) 解决
1. 在开发机上生成自己的密钥
ssh-keygen -b 1024 -t rsa
-b 指密钥对长度 -t 指加密方式
Enter file in which to save the key (/home/usrname/.ssh/id_dsa):
默认位置即可,方便简洁
然后
passphrase 输入一个登陆密码,不然别人有了私钥在一台设备上就随便提交了
不过有个缺陷就是会每次都输入密码,可以按照(4)的方式,使用ssh缓存
生成后,在自己的.ssh目录下会生成私钥和公钥
2. 在github 中添加公钥:
起个名字,然后进行第三步
3. 测试ssh 连接
ssh -vT git@github.com
输入第一步中设定的phrase,
得到从github的欢迎信息:
Hi XXX! You've successfully authenticated, but GitHub does not provide shell access.
4. 运行代理ssh,避免多次输入密码
eval `ssh-agent` 启用一个设定自身环境变量的ssh 代理进程
ssh-add ~/.ssh/id_rsa 向该进程内添加自己的私钥文件
输入密码后,可以查看一下缓存中是否有自己的key了
ssh-agent -l
记得不再用提交代码后,清空缓存:)
ssh-agent -k
5. 正常的git 操作即可
git init 初始化目标仓库
git remote add XX git@github.com:MYNAME/MYPRO.git 建立个快捷命名
git pull -u XX master 载入
其他操作后,提交回服务器
git push -u XX master