首页 > 其他分享 >Git-如何区分使用个人账户和公司账户

Git-如何区分使用个人账户和公司账户

时间:2024-09-26 15:35:01浏览次数:1  
标签:Git com 区分 个人账户 rsa ssh config SSH

个人日常编写点小玩具,code 的版本控制一般托管于GitHub,但是公司内部使用 GitLb 来进行代码版本控制,这样为了能够在同一台 MacBook(自带,公司有补贴)日常区分出两个账户,通过翻阅资料做了如下配置。

操作环境

  • MacBook

  • Git(git version 2.39.5)

  • 命令行终端

SSH密钥生成

在终端,使用个人邮箱和公司邮箱分别生成 SSH key


#创建公司的SSH-Key
ssh-keygen -t rsa -C "[email protected]" -f ~/.ssh/id_rsa

#创建个人的SSH-Key
ssh-keygen -t rsa -C "[email protected]" -f ~/.ssh/id_rsa_personal

同时会生成对应的公钥,以.pub为文件后缀,这个公钥是用来上传到 Git 托管服务器的,用来进行 SSH 通讯。生成的密钥文件如下图所示:

SSH密钥

基于 SSH config 的隔离

有了上面的密钥,如何进行账户的隔离呢?很简单,通过指定密钥。在~/.ssh下创建 config 文件,如果没有的话:

# 创建配置文件
touch config

然后在 SSH config 文件中分别指定账户:

# 个人
Host github.com
HostName github.com
PreferredAuthentications publickey
IdentityFile ~/.ssh/id_rsa_personal


# 公司
Host gitlb.yourcompany.com # 替换为你的公司托管服务器
HostName gitlb.yourcompany.com
PreferredAuthentications publickey
IdentityFile ~/.ssh/id_rsa

区分账户

由于公司的项目远远多于个人项目,我一般把公司账户作为 Git 的全局使用账户(当然你也可以正好相反):

# 全局配置默认使用公司账户
git config --global user.name "you" && git config --global user.email "[email protected]"

然后个人项目目录下每次执行(如果你有更好的方法欢迎评论区指教)

# 个人项目配置,每次新创建项目都需要执行
git config --local user.name "schacon" && git config --local user.email "[email protected]"

这样,把公钥上传到远程 Git 托管服务器后,就可以分别在公司和个人项目里使用对应的 Git 账户了。

以上。

Reference


如果这篇文字对你有帮助,你又恰好想握手言谢,那么可以请我喝杯咖啡

标签:Git,com,区分,个人账户,rsa,ssh,config,SSH
From: https://www.cnblogs.com/nasan/p/18433517

相关文章

  • Github使用技巧
    1、怎么查找对应关系 一般查找对应关系,可以去阅读下面的说明: 2、0.20.Release版本不存在的问题如上图:根本不知道0.2.1.RELEASE对应的dubbo-spring-boot-start版本是多少,在maven仓库中根本没有这个版本解释:这里需要我们点击这个版本,然后就会跳转到这个代码上,如下图: ......
  • hexo部署报错:Deployer not found: git
    一、报错将hexo部署到Github时发生Deployernotfound:git报错二、报错原因及解决方法报错原因在初次部署hexo时没有安装hexo-deployer-git插件导致部署时发生Deployernotfound:git报错 解决方法1.执行cnpminstallhexo-deployer-git--save或npminstallhexo-d......
  • GitLab 中文版如何升级到最新的 17.4?
    本文分享极狐GitLab17.4升级的详细步骤。今日,极狐GitLab17.4正式发布。新版本发布了几十项与DevSecOps相关的更新,包括项目管理、源代码托管、CI/CD、安全合规等。对于用户来讲及时升级到最新版本不仅能够第一时间体验到最新功能,更重要的是能够避免老旧版本存在的安全风险而遭......
  • 揭秘 Git-stash:掌握暂存技巧,让代码更整洁!
    stash可以冻结目前的状态‍在gitstash出现之前当我们在开发一个新功能的时候,突然来了一个紧急的bug要修复,此时我们可以创建一个分支去修复它;但如果,切换会导致冲突的话,就会切换失败。我们来模拟下(先确保工作区是干净的):$gitbranchbug02$echo"test">>3-branch/br......
  • Git 分支管理全攻略:一篇博客带你玩转代码分支!
    什么是分支?在Git里,分支其实就有点像一个树的枝杈,每个分支上可以有不同的文件的版本,并且不会互相干扰。​分支功能有什么用?在工作中,我们经常是需要和别人一起开发一个项目的,此时可能你开发A功能,别人开发B功能;如果只有一个分支的话,那么所有人都得在这个分支上干活;如果你开发......
  • 关于 GitHub 的奇技淫巧
    介绍下多年来使用GitHub所了解到的技巧‍学会看文档如何学习使用GitHub呢?最好的方式就是:阅读官网文档。官方文档通常比任何教程都全面、权威、准确。网上教程和文章满天飞,但都是建立在官方文档的基础上,一旦官方文档修改了,很难做到实时同步,就可能会让学习者感到困惑。对......
  • 掌握 Git 远程仓库,让团队协作更上一层楼
    介绍下远程仓库的概念、常见的远程仓库以及常见的操作。‍‍什么是远程仓库目前,我们的版本库都是在自己的电脑上,并不方便给别人访问,更别说一起维护一个版本库了;如果我们的电脑关机了(或者坏了),岂不是别人就没法干活了?因此,我们通常需要找一台服务器,存放我们的版本库;然后,其他人就......
  • centos7安装gitlab并汉化
    一、基础环境准备1.安装依赖包[root@gitlab-server~]#yuminstallcurlpolicycoreutilsopenssh-serveropenssh-clientspostfixwgetgitpatch-y[root@gitlab-server~]#systemctlstartpostfix2.配置yum源(由于网络问题,国内用户,建议使用清华大学的镜像源进行安装)[root@g......
  • git修改某些指定提交的履历信息
    一,关于gitrebase-ihead~n的命令,可以修改某个提交的提交履历1,gitlog查看提交log,确认需要修改的commit2,gitrebase-ihead~2(以修改最后的两次提交的履历为例)3,进入gitvim编辑页面,按键盘i进入编辑模式,将需要修改履历的两条提交的“pick”改为“r”(此时不需要改履历信息)4,按......
  • 03 git 码云面试题
    1.写出你常用的git命令。2.你们公司是怎么用git做开发的?1.在码云或GitHub等代码托管的网站创建自己仓库,创建完之后码云会给我一个仓库地址,如:https://gitee.com/old_boy_python_stack_21/190326032.git2.自己写代码.....3.将代码提交到远程仓库。-......