📜  为多个帐户设置 git config - Shell-Bash (1)

📅  最后修改于: 2023-12-03 15:21:37.918000             🧑  作者: Mango

为多个账户设置 git config

当你使用多个 GitHub 或 GitLab 账户时,在一个设备上通过 Git 进行代码操作时,你需要为每个账户配置独立的 Git 配置。这篇文章会向你介绍如何配置多个 Git 账户,并且保证它们不会发生冲突。

步骤
  1. 首先,你需要创建不同的 SSH 密钥对。

    ssh-keygen -t rsa -C "your_email@example.com" -f ~/.ssh/id_rsa_work
    # 根据此命令,创建一个名为 id_rsa_work 的 SSH 密钥对
    

    如果要创建多个密钥对,则需要将 -f 参数中的文件名替换为不同的文件名。密钥存储在 ~/.ssh/ 目录下。

  2. 将公钥添加到你的每个 GitHub 或 GitLab 账户设置中。这个过程会在每个 Git 托管服务中有所不同。

    • GitHub:在用户设置的 SSH and GPG keys 标签页中点击 "New SSH key",将你的 id_rsa_work.pub 公钥复制并粘贴到文本框中
    • GitLab:在用户设置的 SSH Keys 标签页中点击 "Add SSH Key",将你的 id_rsa_work.pub 公钥复制并粘贴到文本框中
  3. 为每个 Git 托管服务配置独立的 ~/.gitconfig 文件。你可以通过以下方式,创建多个 .gitconfig 文件。

    # 为 GitHub 创建一个独立的 gitconfig 文件
    cd ~ && touch .gitconfig-work && vim .gitconfig-work
    
    # 为 GitLab 创建一个独立的 gitconfig 文件
    cd ~ && touch .gitconfig-personal && vim .gitconfig-personal
    
  4. ~/.gitconfig-work 文件中配置 GitHub gitconfig 参数。

    [user]
     name = Your Name
     email = your_email@github.com
    
    [core]
     editor = vim
     pager = less
    
    [remote "origin"]
     url = git@github.com:your-username/your-repo.git
    
  5. ~/.gitconfig-personal 文件中配置 GitLab gitconfig 参数。

    [user]
     name = Your Name
     email = your_email@gitlab.com
    
    [core]
     editor = vim
     pager = less
    
    [remote "origin"]
     url = git@gitlab.com:your-username/your-repo.git
    
  6. ~/.bashrc~/.zshrc 文件中设置别名,用于使用不同的 Git 设置。

    # 为 GitHub 设置一个别名
    alias gitconfig-work='git config --global include.path ~/.gitconfig-work'
    
    # 为 GitLab 设置一个别名
    alias gitconfig-personal='git config --global include.path ~/.gitconfig-personal'
    
    # 设置默认的 Git 配置
    alias gitconfig-default='git config --global --unset include.path'
    
  7. 运行 $ gitconfig-work 命令,切换到 GitHub 配置。运行 $ gitconfig-personal 命令,切换到 GitLab 配置。运行 $ gitconfig-default 命令,切换回默认配置。

你现在可以使用不同的 Git 配置,为多个 GitHub 或 GitLab 账户进行管理。

请注意,如果你使用的是 macOS 手动安装的 Git 版本 V2.13,那么它将无法识别 include.path 选项,但你可以使用 cat ~/.gitconfig-work >> ~/.gitconfig 命令将工作 gitconfig 文件的内容添加到全局 gitconfig 文件中。

以上就是为多个账户设置 Git 配置的操作步骤,祝您操作愉快!