返回

Mac OS 多平台版本控制之路:轻松连接 GitLab 和 GitHub

开发工具

好的,现在开始!

为什么会有这篇文章?

今天,我遇到了一个问题:在我的 Mac 上连接公司 GitLab 后,GitHub 受到了影响。问题在于,生成的 SSH 密钥文件被覆盖了。然后我发现,其实还有一个简单的方法可以解决这个问题,那就是将生成的 SSH 密钥文件和 GitLab 配置文件分开命名。

以下是解决问题的步骤:

  1. 生成 SSH 密钥文件

    首先,我们需要生成一对 SSH 密钥文件。这可以通过使用以下命令来实现:

    ssh-keygen -t rsa -b 4096
    

    在生成密钥文件的过程中,系统会提示您输入密钥文件的保存路径和名称。您可以根据自己的喜好来设置。

  2. 将 SSH 密钥添加到 GitLab

    接下来,我们需要将生成的 SSH 密钥添加到 GitLab 中。这可以通过以下步骤来实现:

    1. 登录 GitLab,然后点击右上角的个人资料图片。
    2. 在弹出的菜单中,选择“Settings”。
    3. 在“Settings”页面中,选择“SSH Keys”。
    4. 点击“Add SSH Key”按钮。
    5. 在弹出的对话框中,粘贴您之前生成的 SSH 公钥。
    6. 点击“Add Key”按钮。
  3. 将 SSH 密钥添加到 GitHub

    现在,我们需要将生成的 SSH 密钥添加到 GitHub 中。这可以通过以下步骤来实现:

    1. 登录 GitHub,然后点击右上角的个人资料图片。
    2. 在弹出的菜单中,选择“Settings”。
    3. 在“Settings”页面中,选择“SSH and GPG keys”。
    4. 点击“New SSH key”按钮。
    5. 在弹出的对话框中,粘贴您之前生成的 SSH 公钥。
    6. 点击“Add SSH key”按钮。
  4. 修改 Git 配置文件

    现在,我们需要修改 Git 配置文件,以便能够同时使用 GitLab 和 GitHub。这可以通过以下步骤来实现:

    1. 打开终端,然后输入以下命令:
    vim ~/.gitconfig
    
    1. 在打开的配置文件中,添加以下内容:
    [remote "gitlab"]
    url = https://gitlab.com/your-username
    fetch = +refs/heads/*:refs/remotes/gitlab/*
    push = +refs/heads/*:refs/heads/*
    
    [remote "github"]
    url = https://github.com/your-username
    fetch = +refs/heads/*:refs/remotes/github/*
    push = +refs/heads/*:refs/heads/*
    
    1. your-username 替换为您自己的 GitLab 和 GitHub 用户名。
  5. 测试连接

    现在,我们可以测试一下是否能够同时连接 GitLab 和 GitHub。这可以通过以下步骤来实现:

    1. 在终端中,进入到您的项目目录。
    2. 输入以下命令:
    git remote -v
    
    1. 您应该会看到类似于以下的输出:
    origin  https://github.com/your-username/your-project.git (fetch)
    origin  https://github.com/your-username/your-project.git (push)
    gitlab  https://gitlab.com/your-username/your-project.git (fetch)
    gitlab  https://gitlab.com/your-username/your-project.git (push)
    

    这表明您已经成功地将 GitLab 和 GitHub 添加到了您的 Git 配置文件中。

希望这篇文章对您有所帮助。如果您有任何问题,请随时留言。