关于window配置gitlab和gitee平台共存

今天使用gitlab拉取代码突然提示 git@gitlab.xxx.com: Permission denied (publickey,gssapi-keyex,gssapi-with-mic,password).
以为是ssh公钥没有配置好,遂又进行了一番配置,实际上并不是这个问题造成的,但还是想记录一下步骤,以免下次配置时又是一番搜索

1、如果已经安装过git并且进行过git全局设置,需要清除

查看是否进行过全局设置 git config --global --list ,如果已经设置过会显示你的邮箱和名字

$ git config --global --list
core.autocrlf=false
core.askpass=
credential.https://gitee.com.provider=generic
safe.directory=D:/project/biotemed
safe.directory=D:/project/visual-list
safe.directory=D:/WebProject/vue3-demo
url.https://.insteadof=git://
user.email=xxxxxxxxxx@outlook.com
user.name=xxx

清除设置

$ git config --global --unset user.name "你的名字"
$ git config --global --unset user.email "你的邮箱"

2、生成新的ssh keys

找到.ssh文件夹,一般都是在C盘里,C:\Users\Administrator.ssh,打开bash终端,输入以下命令生成密钥文件

$ cd C:\Users\Administrator\.ssh

// 1.gitlab
$ ssh-keygen -t rsa -C "你的gitlab邮箱" -f id_rsa_gitlab -C "GitlabAccount"

// 1.gitee
$ ssh-keygen -t rsa -C "你的gitee邮箱" -f id_rsa_gitee -C "GiteeAccount"

期间会要求输入密码,不用输入,直接敲三下回车即可
生成之后.ssh文件夹下会有中间四个文件
在这里插入图片描述
然后创建config文件,注意没有后缀名

// 把第一行和第二行修改成自己公司的gitlab地址
# gitlab
    Host gitlab.xxxx.com
    HostName gitlab.xxxx.com
    PreferredAuthentications publickey
    IdentityFile ~/.ssh/id_rsa_gitlab
    User git
# gitee
    Host gitee.com
    HostName gitee.com
    PreferredAuthentications publickey
    IdentityFile ~/.ssh/id_rsa_gitee
    User git

3、把对应的公钥放到gitlab和gitee上

gitlab:
找到 id_rsa_gitlab.pub 文件,打开复制其中内容,然后粘贴到gitlab上添加SSH密钥
在这里插入图片描述
gitee:
找到 id_rsa_gitee.pub 文件,打开复制其中内容,然后粘贴到gitee上添加SSH密钥,gitee点击确认后需要输入密码
在这里插入图片描述

4、测试

Gitee 测试

$ ssh -T git@gitee.com
$ ssh -T git@gitee.com
Warning: Permanently added the ECDSA host key for IP address '180.97.125.228' to the list of known hosts.
Hi fengmi! You've successfully authenticated, but GITEE.COM does not provide shell access.

显示successfully,即配置成功

GitLab 测试
git@git.xxxxcn 是gitlab的仓库地址

$ ssh -T git@git.xxxx.cn

显示welcome to gitlab,即配置成功

另外
我这里测试gitlab 提示,并没有成功,但是不影响使用http的方式,有时间遇到gitlab提示Permission denied (publickey,gssapi-keyex,gssapi-with-mic). ,也有可能是使用ssh方式拉取的,换成http就可使用

Administrator@DESKTOP-7CIE2UQ MINGW64 ~/.ssh
$ ssh -T git@git.xxxx.com
ssh: Could not resolve hostname git.xxxx.com: Name or service not known

相关推荐

  1. Git、GitHub、Gitee GitLab的区别使用方法

    2024-07-17 05:42:05       48 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-07-17 05:42:05       67 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-07-17 05:42:05       72 阅读
  3. 在Django里面运行非项目文件

    2024-07-17 05:42:05       58 阅读
  4. Python语言-面向对象

    2024-07-17 05:42:05       69 阅读

热门阅读

  1. 使用Spring Boot集成RocketMQ进行消息发送的示例

    2024-07-17 05:42:05       24 阅读
  2. 量化机器人在不同市场环境下的表现

    2024-07-17 05:42:05       22 阅读
  3. 微信小程序:2.全局开发

    2024-07-17 05:42:05       26 阅读
  4. DRF分页器(Django Restful Framework)

    2024-07-17 05:42:05       29 阅读
  5. 速盾:DDOS攻击能使用高防CDN防御吗?

    2024-07-17 05:42:05       22 阅读
  6. 面试题 29. 顺时针打印矩阵

    2024-07-17 05:42:05       24 阅读
  7. 【python】运用Request库实现爬虫

    2024-07-17 05:42:05       22 阅读
  8. opencv—常用函数学习_“干货“_9

    2024-07-17 05:42:05       32 阅读
  9. 掌握Conda配置:如何禁用Base环境的自动激活

    2024-07-17 05:42:05       22 阅读
  10. volatile的应用

    2024-07-17 05:42:05       23 阅读
  11. MySQL 分库分表

    2024-07-17 05:42:05       26 阅读