使用git的ssh
Posted githubmyl
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了使用git的ssh相关的知识,希望对你有一定的参考价值。
一、前言
之前一直在使用https来push仓库,缺点是每次都需要输入账号和密码。使用ssh的话,可以不输入密码。
二、使用
单个ssh
仅仅使用github作为远程仓库服务器,那么只需要一个ssh即可。
生成ssh:ssh-keygen -t rsa -C "[email protected]" -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 [email protected]
返回含successfully单词的语句,表示链接成功。
使用ssh push/pull仓库:
进入一个仓库,克隆仓库ssh
然后,在添加远程仓库时,使用这个ssh
这样,就可以使用ssh进行push/pull了。git remote add github '刚刚复制的ssh'
多个ssh
当既使用多个git的远程服务器时,比如码云、github。这时,需要管理多个ssh。
生成公钥ssh-keygen -t rsa -C "[email protected]" -f ~/.ssh/gitee_id_rsa ssh-keygen -t rsa -C "[email protected]" -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 [email protected] $ ssh -T [email protected]
同时,在.ssh目录下回生成know_hosts文件来区分不同的ssh
使用ssh来push和pull(略)
提示:单个ssh和多个ssh的配置步骤并没有太大区别,不同是多个ssh时,需要添加一个config文件来区分ssh。
以上是关于使用git的ssh的主要内容,如果未能解决你的问题,请参考以下文章
VSCode自定义代码片段15——git命令操作一个完整流程