[转载]同一台电脑同时利用GitHub和GitLab

[复制链接]
发表于 2026-2-12 00:03:40 | 显示全部楼层 |阅读模式
原文所在:https://developer.aliyun.com/article/893801
   简介: 工作中我们偶然大概会在同一台电脑上利用多个git账号,比方:公司的gitLab账号,个人的gitHub账号。怎样才气在利用gitlab与github时,切换成对应的账号,而且免密?这时我们须要利用ssh(git可以选择利用https方式、ssh方式两种方式通讯,但利用https方式时,每次fetch和push代码都须要输入账号和暗码),以windows为例,举行如下利用。
  一,天生ssh密钥并设置

分别对gitlab和github天生对应的密钥(默认情况下本地天生的秘钥位于C:/Users/用户名/.ssh/)
1,天生gitlab密钥并设置

1.1 电脑开始菜单中找到已安装的gitbash并打开,输入下令:

  1. ssh-keygen -t rsa -C "公司邮箱地址"
复制代码
按回车,再按3次enter键,天生对应的gitlab密钥:id_rsa和id_rsa.pub

1.2 将gitlab公钥即id_rsa.pub(Windows下路径为C:/Users/用户名/.ssh/)中的内容设置到公司的gitlab上。

利用步调如下图。用记事本打开id_rsa.pub,复制有所内容,粘贴到4里;5中标题可恣意输入。

2,天生github密钥并设置

2.1 在gitbash中输入下令:

  1. ssh-keygen -t rsa -C "github邮箱地址" -f ~/.ssh/github_rsa
复制代码
2.2 天生对应的github密钥:github_rsa和github_rsa.pub


2.3 将github公钥即github_rsa.pub中的内容设置到本身的github上。利用步调如下:


2.4 打开github_rsa.pub,复制有所内容,填入后点击“Add SSH key”按钮。接着大概会跳转页面须要输入你的GitHub暗码,输入确定即可。


3,设置git,访问差别host时利用差别的密钥



  • 进入密钥天生的位置(C:/Users/用户名/.ssh/),手动创建一个config文件(留意这个config文件要无后缀)。
  • 在新建的config文件内里设置如下内容:
  1. # 自己的github账号配置
  2. Host github.com
  3.     port 22
  4.     User git
  5.     HostName github.com
  6.     PreferredAuthentications publickey
  7.     IdentityFile C:\Users\xiaoqq\.ssh\github_rsa
  8. # 公司的gitlab账号配置(HostName为公司的gitlab地址)
  9. Host gitlab.com
  10.     port 22
  11.     User git
  12.     HostName gitlab.xxx.com
  13.     User git
  14.     PreferredAuthentications publickey
  15.     IdentityFile C:\Users\xiaoqq\.ssh\id_rsa
复制代码
字段设置简朴阐明:
  1. Host
  2.     Host可以看作是一个你要识别的模式,对识别的模式,配置对应的主机名和ssh文件
  3. Port
  4.     自定义的端口。默认为22,可不配置
  5. User
  6.     自定义的用户名,默认为git,可不配置
  7. HostName
  8.     真正连接的服务器地址
  9. PreferredAuthentications
  10.     指定优先使用哪种方式验证,支持密码和秘钥验证方式
  11. IdentityFile
  12.     指定本次连接使用的密钥文件
复制代码
设置HostName时须要留意,复制公司gitlab大概本身的github所在时,须要把"https://"去掉,只保存github.com部门。
二,验证是否设置乐成

在C:/Users/用户名/.ssh中,右键打开Git Bash Here,分别输入下令:
  1. # 测试github
  2. ssh -T git@github.com
  3. # 测试gitlab(@符后面的为公司gitlab地址) 如果需要指定端口号 -p 具体端口号名
  4. ssh -T git@gitlab.xxx.com
复制代码
如下图所示则阐明设置乐成

三,git堆栈设置

1,简介

在git中,我们利用git config 下令用来设置git的设置文件,git设置级别告急有以下3类:


  • 堆栈级别 local 【优先级最高】
  • 用户级别 global【优先级次之】
  • 体系级别 system【优先级最低】
1.1 git 堆栈级别对应的设置文件是当前堆栈下的.git/config 【在当前目次下.git目次默认是潜伏的,以是在文件管理器中我们要打开表现以藏文件】


1.2 git 用户级别对应的设置文件是用户宿主目次下的~/.gitconfig 【宿主目次:C:\Users\xiaoqq】




1.3 git体系级别对应的设置文件是git安装目次下的 /etc/gitconfig

简朴相识后我们就可以举行设置了
2,设置

用户级别设置

用户级别是设置公司gitlba账号还是本身github账号,可以自由选择。由于寻常利用公司的代码频率较高,以是我选择将gitlab账号设置成用户级别。gitBath下实行如下下令:
  1. git config --global user.name 'lfr' #公司账号名称
  2. git config --global user.email 'lfr@company.com' #公司账号邮箱
复制代码
堆栈级别设置

local(堆栈级别)设置成github的账号。选择一个文件夹作为github的本地堆栈,在该文件夹里鼠标右键打开Git Bash Here,实行下令:git init
再实行下令:
  1. git config --local user.name 'username' #github账号名称
  2. git config --local user.email 'username@gmail.com' #github账号邮箱
复制代码
之后本身的github的代码都应该在这个堆栈下举行pull、push利用。
3,克隆项目代码

克隆本身github的项目代码至本地堆栈。在2.2中的本地堆栈打开gitBash,输入下令:
  1. git clone git@github.com:CarlLfr/pythonScript.git # github项目地址(clone with ssh)
复制代码
如许就可以对克隆的项目举行git其他的利用了。
至此,我们就可以在这台电脑上同时利用github与gitlab举行代码的设置就完成了。
参考


  • https://www.jianshu.com/p/a34e90b5ce2a
  • https://blog.csdn.net/weixin_43161811/article/details/88804030

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!qidao123.com:ToB企服之家,中国第一个企服评测及软件市场,开放入驻,技术点评得现金

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

×
回复

使用道具 举报

登录后关闭弹窗

登录参与点评抽奖  加入IT实名职场社区
去登录
快速回复 返回顶部 返回列表