window下配置多个git账户

2/29/2024 11:09:54 AM
290
0

1、生成私钥公钥

打开git的bash客户端命令行窗口,执行ssh-keyget,生成rsa的公钥和私钥。

 ssh-keygen -t rsa -C mail@mail.com

注意生成的密钥文件名称可以自定义,不输入则使用默认的文件名,因此多次执行会存在覆盖的风险,建议自定义文件名。
密码可以输入也可以不输入,如果输入了密码后续在执行部分与git仓库交互的命令时需要输入密码,如果输入请牢记这个密码。这个密码是本地的不与任何其他系统关联。

$ ssh-keygen -t rsa -C "muba@qq.com"
Generating public/private rsa key pair.
Enter file in which to save the key (/c/Users/anzelin/.ssh/id_rsa): id_rsa_gitee 秘钥名称
Enter passphrase (empty for no passphrase): 输入密码,自定义不与任何系统关联
Enter same passphrase again: 再次输入密码
Your identification has been saved in id_rsa_gitee
Your public key has been saved in id_rsa_gitee.pub
The key fingerprint is:
SHA256:tT5SC8V7dtheyjufrokeufhckLyChSbIy8rjS/jRO4 muba@qq.com
The key's randomart image is:
+---[RSA 3072]----+
| o..    .        |
|... .  . +       |
|..+  .. . *      |
|=*o  ..  + +     |
|+Boo .. S + .    |
|=.= +.o  + o     |
|.O + o... +      |
|X .  .o  . .     |
|oE. ..           |
+----[SHA256]-----+

生成的文件命名为 id_rsa_gitee 私钥的密码可以不用设置,也可以根据个人情况进行设置。生成之后,在所执行命令的目录下会生成两个文件:

id_rsa_gitlab
id_rsa_gitlab.pub

使用上述过程生成多个公钥私钥

2、配置config

window下默认在 c:/users/计算机名/.ssh下,如果找不到试着调整资源管理器“查看”选项显示隐藏的文件。
当配置多个用户的密钥后,.ssh下会有多个密钥对和一个config。如果config不存在可以手动创建,配置内容

# 配置github.com
Host github.com                 
    HostName github.com
    IdentityFile C:\\Users\\username\\.ssh\\id_rsa
    PreferredAuthentications publickey
    User github_username

# 配置gitlab私服
Host git.xxxx.cn
    HostName git.xxxx.cn
    IdentityFile C:\\Users\\username\\.ssh\\id_rsa_gitlab
    PreferredAuthentications publickey
    User gitlab_username

配置完毕后在git bash窗口执行命令进行测试

ssh -T git@github.com

响应内容

Enter passphrase for key 'C:\\Users\\NIUQIANQIAN\\.ssh\\id_rsa_github':<输入密码>
Hi niuniu007! You've successfully authenticated, but GitHub does not provide shell access.

测试成功后就可以将公钥配置到git托管服务的系统中了

3、配置公钥到远程仓库

后续在使用过程中会在.ssh目录下自动生成known_hosts文件

 

如何配置git 密钥,及仓库的配置和上传参考更多资料

初次安装git配置用户名和邮箱
本地项目上传到git仓库

全部评论



提问