沙茶酱
主 题
初始化
git初始化记得设置用户名和邮箱
language
git config --global user.email "your email"
git config --global user.name "your name"
问题细节
ssh-keygen -t rsa -C 9637985122@qq.com
今天笔记本发现用命令 git pull
拉取不了自己gitee
的项目代码;用小乌龟拉取的话却可以。
原因是:之前从gitee
配置ssh新建了公钥,小乌龟之前指定配置了私钥的。但默认git
使用的私钥是旧的,所以导致拉取代码报公钥错误 (因为之前各种使用vpn
才能拉取代码的项目,又忘记使用同一公钥了,新建了很多公私钥导致这个问题)。
问题解决
生成 ssh-key
language
cd ~/.ssh // 进入用户ssh目录
ssh-keygen -t rsa -C 邮箱 -f gitee
ssh-keygen -t rsa -C 邮箱 -f github
- 当多个平台不同项目使用ssh时,可以全部平台都统一使用同一公钥和对应的私钥(只有一个公钥和一个私钥情况下)就不会出现公钥报错问题。
- 不项目使用不同公私钥:例如
gitee
和github
分别使用不同公私钥。需要对C:UsersDELL.ssh
文件夹下的config
文件进行如下配置;
language
// gitee
Host gitee.com
HostName gitee.com
PreferredAuthentications publickey
IdentityFile ~/.ssh/gitee
// github
Host github.com
HostName github.com
PreferredAuthentications publickey
IdentityFile ~/.ssh/github
.ssh中有以下文件
language
// .ssh文件夹
gitee
gitee.pub
github
github.pub
3.测试连接
language
$ ssh -T git@gitee.com
# Hi 江夏! You've successfully authenticated, but GITEE.COM does not provide shell access.
$ ssh -T git@github.comm
# Hi Jiang-Xia! You've successfully authenticated, but GitHub does not provide shell access.
!!!多对公私钥比较麻烦的话,可以全平台都使用一个公钥即可。
常见问题
1.代码突然拉取不下啦,22端口拒绝链接:
解决方法:
github参考文档
改为使用433端口链接 ssh -T -p 443 git@ssh.github.com
用户.ssh/config
增加config
文件。加入以下配置
language
Host github.com
Hostname ssh.github.com
Port 443
User git
全部评论(0)