背景需求:
在工作和学习的过程中,我们经常会遇到在一台电脑上,需要管理多个Git,比如同时需要管理Gitee、Github、微信Git等。
例如在同一台电脑上有本地项目A、项目B、项目C。 其中项目A是在Gitee托管的,而项目B是在微信Git托管,项目C是在Github托管。
背景知识:
首先,我们知道一般拉取代码的时候,会有2种常用的方式。
HTTPs方式 和 ssh方式
而不同的托管平台,其实对于这两种方式的支持程度是不一样的。
解决方案:
操作方法1-HTTPS方式
win用账号密码配置windows凭据(无法支持github,不适用Mac、Linux):
步骤一:搜索找到win凭据管理器
步骤二:配置凭据
目前用户名配置邮箱,密码配置平台的密码,即可实现拉取推送。
步骤三:pull、push
操作方法2-SSH方式,配置SSH
步骤一: 随便在那里打开git bash,并切换到ssh 目录
cd ~/.ssh/
步骤二: 生成需要的密钥对
# 准备给github的
$ ssh-keygen -t rsa -C "[email protected]" -f github_rsa
# 准备给gitee的
$ ssh-keygen -t rsa -C "[email protected]" -f gitee_rsa
生成的文件如下图
每次命令,生成两个文件,一个公钥一个私钥。
带pub后缀的就是公钥,要放到对应的云平台上去
步骤三:把公钥放到对应云平台,以github为例
先在git bash中,使用 cat命令拿到公钥信息
然后把内容拷贝出来,打开github的个人setting,添加ssh key
步骤四: 配置config,让电脑知道哪个云平台应该用哪个密钥。
在.ssh目录下,新建config文件(注意全名就是config没有后缀)
在里面填写配置信息,告诉电脑怎么做选择。
如果有更多站点,接在后面再加就行。
步骤五: 测试连接
ssh -T [email protected]
步骤六: 项目测试
对于github而言,首次推送需要进行两次验证。
第一次输入的是 github的登录 用户名 和 密码
第二次输入的是 在github上生成的token
生成的token务必复制保存好,退出页面后就看不到了,只能重新生成。
步骤七: 大功告成!!!!!!!
push操作成功。
对于gitee的操作也同理,先ssh -t测试连通,再git pull 和 git push (gitee目前不需要设置token,首次推送会相对简单)
参考文章:
https://blog.csdn.net/felicity294250051/article/details/53606158
https://blog.csdn.net/pinnuli/article/details/81293071
https://blog.csdn.net/weixin_46622106/article/details/111914231