在windows上配置git支持多账号
现在大多数人都采用git进行版本管理,在git下面进行开发被越来越多的程序员所接受。还有越来越多的人参与开源社区的建设。现在有一个问题就是,在windows环境下,如何在git客户端上通过sshkey的方式配置多个账号。不需要输入git的用户名和密码,使得更加方便高效。...
1.背景
现在大多数人都采用git进行版本管理,在git下面进行开发被越来越多的程序员所接受。还有越来越多的人参与开源社区的建设。现在有一个问题就是,在windows环境下,如何在git客户端上通过ssh key的方式配置多个账号。不需要输入git的用户名和密码,使得更加方便高效。
2. SSH Key的生成
在windows上打开git的bash客户端命令行窗口:
之后执行ssh-keyget,生成rsa的公钥和私钥。
ssh-keygen -t rsa -C mail@mail.com
执行结果如下:
生成的文件命名为 id_rsa_gitlab
私钥的密码可以不用设置,也可以根据个人情况进行设置。生成之后,在所执行命令的目录下会生成两个文件:
id_rsa_gitlab
id_rsa_gitlab.pub
这两个文件截图如下:
用其他的方式可以生成所需的公钥和私钥对。邮箱尽量和git账号的邮箱保持一致,这样也便于以后区分。
3.gitlab配置
在gitlab上,账户的Settings中进行配置:
在左侧的sshKey中:
将公钥中的文本内容copy到下列位置:
copy之后如下:
title可以自定义配置。
github中的配置也与上述类似:
添加ssh key:
- windows本地的git配置
首先需要将生成的公钥和私钥对,copy到当前用户的.ssh目录中去。
windows中位于如下目录:
#windows
C:\Users\username\.ssh
#linux
/home/username/.ssh
copy之后,,ssh中的文件:
其中,id_rsa是github的密钥对。id_rsa_gitlab是gitlab的密钥对。
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
上述username为windows用户的当前用户名。
github_username 为github上的username.
gitlab_username 为gitlab本地私服的username.
配置完成之后,对上述配置进行测试,测试命令:
ssh -T git@github.com
测试结果如下:
测试成功即表明配置成功,两个git能够访问。
可以查看know_hosts文件发现,配置的githost已经被自动添加了。
后面就可以愉快的拉代码了。
开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!
更多推荐
所有评论(0)