标签:文件中 users 输入密码 服务 远程 缺点 shu key ssh公钥
之前一直在使用https来push仓库,缺点是每次都需要输入账号和密码。使用ssh的话,可以不输入密码。
单个ssh
仅仅使用github作为远程仓库服务器,那么只需要一个ssh即可。
生成ssh:
ssh-keygen -t rsa -C "xxxxx@xxxxx.com" -f ~/.ssh/github_id_rsa
使用上述命令,会在目录~/.ssh(windows在C:/Users/admininstrator/.ssh/)
中生成两个文件:github_id_rsa和github_id_rsa.pub,分别保存私钥和公钥。
查看公钥:
cat ~/.ssh/github_id_rsa.pub
上面命令查看github_id_rsa.pub文件的内容,输出公钥,复制该公钥
打开github添加ssh公钥:
在key中粘贴刚才复制的公钥,title随意填写。
查看链接是否成功:
ssh -T git@github.com
返回含successfully单词的语句,表示链接成功。
使用ssh push/pull仓库:
进入一个仓库,克隆仓库ssh
然后,在添加远程仓库时,使用这个ssh
git remote add github '刚刚复制的ssh'
这样,就可以使用ssh进行push/pull了。多个ssh
当既使用多个git的远程服务器时,比如码云、github。这时,需要管理多个ssh。
生成公钥
ssh-keygen -t rsa -C "xxxxx@xxxxx.com" -f ~/.ssh/gitee_id_rsa
ssh-keygen -t rsa -C "xxxxx@xxxxx.com" -f ~/.ssh/github_id_rsa
这里的重点在于,将公钥保存在不同的文件中,即区分二者。
查看公钥
cat ~/.ssh/github_id_rsa.pub
cat ~/.ssh/gitee_id_rsa.pub
在远程服务器(码云、github)中添加公钥(略)
配置config
在~/.ssh(windows在C:/Users/admininstrator/.ssh/)目录下新建一个config文件(不含扩展名)
。在文件中,添加下面内容:
# gitee
Host gitee.com
HostName gitee.com
PreferredAuthentications publickey
IdentityFile ~/.ssh/gitee_id_rsa
# github
Host github.com
HostName github.com
PreferredAuthentications publickey
IdentityFile ~/.ssh/github_id_rsa
检查连接是否成功
$ ssh -T git@gitee.com
$ ssh -T git@github.com
同时,在.ssh目录下回生成know_hosts文件来区分不同的ssh
使用ssh来push和pull(略)
提示:单个ssh和多个ssh的配置步骤并没有太大区别,不同是多个ssh时,需要添加一个config文件来区分ssh。
标签:文件中 users 输入密码 服务 远程 缺点 shu key ssh公钥
原文地址:https://www.cnblogs.com/githubMYL/p/9858988.html