window下配置多个git账号

前言:工作中使用公司git账号,自己写的小demo用个人git账号

参考:https://www.cnblogs.com/popfisher/p/5731232.html

1. 生成github.com对应的私钥公钥(本文中文件地址C:\Users\popfisher目录)

执行命令ssh-keygen -t rsa -C 774*****22@qq.com 创建github对应的sshkey,命名为id_rsa_github,密码123456 

代码:ssh-keygen -t rsa -C '774*****22@qq.com'

注:在git bash 里输入上面代码回车,第一行是指定文件名称,默认 id_rsa , 在配置多个账号时,应修改名称,避免覆盖之前已配置好的账号。

生成的私钥和公钥文本最好保存在之前保存的 同一文件夹下,一般保存在 c/Users/admin/.ssh 下


2.在.ssh目录创建config文本文件并完成相关配置(最核心的地方)

每个账号单独配置一个Host,每个Host要取一个别名,每个Host主要配置HostNameIdentityFile两个属性即可

Host的名字可以取为自己喜欢的名字,不过这个会影响git相关命令,例如:

Host github 这样定义的话,命令如下,即git@后面紧跟的名字改为github 

git clone git@mygithub:PopFisher/AndroidRotateAnim.git


HostName 这个是真实的域名地址

IdentityFile 这里是id_rsa的地址

PreferredAuthentications配置登录时用什么权限认证--可设为publickey,password publickey,keyboard-interactive等

User 配置使用用户名

易遗漏: 1. 把公钥添加到你想添加的托管平台 ;2、平台绑定生成公钥的邮箱;3、后面clone 的时候使用 ssh地址

3.打开Git Bash客户端(管理员身份运行)执行测试命令测试是否配置成功(会自动在.ssh目录生成known_hosts文件把私钥配置进去)

代码: ssh -T git@github ----> github 为config 中配置的 host名字

返回:Hi ************ ! You've successfully authenticated, but GitHub does not provide shell access.  则连接成功


此时,基本已配置好。

经测试: 一个邮箱生成的 公钥私钥 可用在不同托管平台多次使用;如:

Host me

    HostName gitee.com

    PreferredAuthentications publickey

    IdentityFile ~/.ssh/id_rsa_me

Host github

    HostName github.com

    PreferredAuthentications publickey

    IdentityFile ~/.ssh/id_rsa_me

4.clone项目到本地(这里以gitee账号为例)

原先操作:git clone git@gitee.com:xxxx/xxx.git;

现改为:git clone git@me:xxxx/xxx.git

即改为git@后为host名

5. 复制公钥

clip < ~/.ssh/id_rsa.pub

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容