美文网首页
git 同时支持 gitlab 与 github 或者 gite

git 同时支持 gitlab 与 github 或者 gite

作者: who_are_you_ | 来源:发表于2024-03-24 18:45 被阅读0次
    简介
      在开发中,可能存在多种代码托管平台的切换问题,这里做个记录。
    

    邮箱不同的情况下:

    第一步、清除已有的全局配置
    // 清除全局name
    git config --global --unset user.name
    // 清除全局email
    git config --global --unset user.email
    
    第二步、分别生成指定命名的SSH key
    // 生成gitlab 密钥
    // -t rsa 指定密钥类型为RSA
    // -f ~/.ssh/gitlab  指定密钥文件的路径为.ssh和文件名gitlab
    // gitlab
    ssh-keygen -t rsa 'gitlab邮箱' -f ~/.ssh/id_gitlab
    // 如果邮件不同可以再生成,但是文件名要求不相同
    // github
    ssh-keygen -t rsa 'github邮箱' -f ~/.ssh/id_github
    
    第三步、同时将两个SSH key分别添加到Github和Gitlab的配置中

    获取ssh 密钥

    // 1、进入ssh文件
    cd ~/.ssh
    // 2、查看当前文件夹中的文件
    ls
    // 3、获取gitlab ssh 密钥,需要用到第二部的命名,查看id_gitlab.pub密钥
    cat id_gitlab.pub
    // 4、复制去下边官网,按照官网的提示配置ssh
    

    官网

    第四步、在.ssh文件夹中创建config文件,用于配置两边能找到对应的 ssh key

    1、进入ssh

    cd ~/.ssh
    

    2、查看文件\可以看到ssh目录

    ls
    

    3、键盘切换英文,按下‘i’进入编辑模式,编辑config文件

    vi config
    

    4、复制配置下边的数据,到config文件,编辑完成按下esc,然后输入:wq 保存配置

    Host gitlab
    # 别名,最好别改
    HostName https://gitlab.公司gitlab域名.com
    #要连接的服务器
    User 可以随便写但是不能一样
    #用户名
    #密钥文件的地址,注意是私钥
    IdentityFile ~/.ssh/id_gitlab
    
    #github 配置
    Host https://github.com
    #别名
    HostName https://github.com
    User xxx 写自己的用户名
    IdentityFile ~/.ssh/id_github
    IdentitiesOnly yes
    PreferredAuthentications publickey
    
    #gitee 配置
    Host https://gitee.com
    #别名
    HostName https://gitee.com
    User xxx 写自己的用户名
    IdentityFile ~/.ssh/gitee_rsa
    IdentitiesOnly yes
    PreferredAuthentications publickey
    

    5、把专用密钥添加到 ssh-agent 的高速缓存中

    // gitlab
    ssh-add ~/.ssh/id_gitlab
    // github
    ssh-add ~/.ssh/id_github
    

    6、查看ssh-agent中的密钥:

    ssh-add -l
    
    测试连接命令,返回自己的名字,或者运行成功不抱错就OK
    // gitlab
    ssh -T git@gitlab.自己公司的域名.com 
    // github
    ssh -T git@github.com 
    // gitee
    ssh -T git@gitee.com 
    
    最后一步配置全局git
    git config --global user.name '用户名'
    git config --global user.email "your_email@example.com"
    
    最后一步配置局部git
    git config --local user.name '用户名'
    git config --local user.email "your_email@example.com"
    
    查看配置
    // 全局
    git config --global --list
    // 局部
    git config --local --list
    

    相关文章

      网友评论

          本文标题:git 同时支持 gitlab 与 github 或者 gite

          本文链接:https://www.haomeiwen.com/subject/ebaltjtx.html