美文网首页
Github和Gitlab同一台电脑上的使用

Github和Gitlab同一台电脑上的使用

作者: Wynne丶XXW | 来源:发表于2019-02-18 20:54 被阅读0次

    公司最近开始使用Git来进行版本控制,在配置好Gitlab之后写了几天代码,来提交本地Github项目时,发现提交不上去.才发现Github与Gitlan不配置config时无法 同时提交的. 以此记录一下学习过程

    生成ssh key文件

    在绑定本地项目上传到github上时,需要创建一个Key文件,然后在github上进行绑定,这里就不在重复描述. 需要查看的可以看我之前写的博客绑定Github

    在同时要绑定github 与gitlab时我们的ssh key 需要自己定义一个名字 ,否则只会重复创建默认名字为id_rsa 的文件. 就无法绑定两个网站了.

    首先通过命令创建SSH文件
    ssh-keygen -t rsa -C "gitlab邮箱"
    ssh-keygen -t rsa -C "github邮箱"
    Enter file in which to save the key (/c/Users/ZL-arccode/.ssh/id_rsa): github_id_rsa 和gitlab_id_rsa

    在确认文件名时分别命名github_id_rsa和gitlab_id_rsa, 用来分别绑定github与gitlab

    添加密钥列表

    ssh-agent bash

    在生成完SSH文件之后 我们需要添加密钥进密钥列表,添加完成后可以通过
    git-add -l 查看加入的密钥列表
    ssh -v git@github.com 查看github调试信息
    ssh -v git@gitlab.com 查看gitlan调试信息
    这里的github.com和gitlab.com 都是指的config 的HostName(下文有说到)

    当我们生成好SSH文件之后,把.pub结尾的文件 复制到我们github和gitlan的ssh记录里面 通过
    $ ssh -T git@github$ ssh -T git@gitlab 进行测试

    正确结果如下

    Github
    Hi tony-xxw! You've successfully authenticated, but GitHub does not provide shell access.

    Gitlab
    Welcome to GitLab, @cb.xiang!

    配置config文件

    我们SSH文件一般会生成在C/User/.ssh/下(Window环境) 我们需要在这个目录下 配置一个config文件,来告诉git 我们的SSH 分别指向github和gitlanb

    文件内容如下

    #gitlan
    Host gitlab HostName gitlan.com IdentityFile ~/.ssh/gitlab_id_rsa

    #github
    Host github HostName github.com IdentityFile ~/.ssh/github_id_rsa

    • host: 指我们需要绑定的网站
    • hostName: 这里指向github与gitlanb的域名, 例如github的域名为(github.com)
    • IdentityFile : 对应的ssh Id文件

    配置全局用户名###

    最后 我们只需要配置好本地的全局账号就算配置成功了

    git config --global user.name 'xxx'
    git config --global user.email 'x@xxx'

    学习中,遇到的问题

    1. git在设置全局账号时 是互相覆盖的
    2. git配置github时 如果全局账号 邮箱不是github的注册邮箱,提交后无法涂满小绿哥
    3. 在配置完config文件以后 git clone 项目 需要使用占位符

    文章参考

    一台电脑上同时使用github和gitlab
    如何更改ids文件名

    相关文章

      网友评论

          本文标题:Github和Gitlab同一台电脑上的使用

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