📅  最后修改于: 2023-12-03 15:21:37.918000             🧑  作者: Mango
当你使用多个 GitHub 或 GitLab 账户时,在一个设备上通过 Git 进行代码操作时,你需要为每个账户配置独立的 Git 配置。这篇文章会向你介绍如何配置多个 Git 账户,并且保证它们不会发生冲突。
首先,你需要创建不同的 SSH 密钥对。
ssh-keygen -t rsa -C "your_email@example.com" -f ~/.ssh/id_rsa_work
# 根据此命令,创建一个名为 id_rsa_work 的 SSH 密钥对
如果要创建多个密钥对,则需要将 -f
参数中的文件名替换为不同的文件名。密钥存储在 ~/.ssh/
目录下。
将公钥添加到你的每个 GitHub 或 GitLab 账户设置中。这个过程会在每个 Git 托管服务中有所不同。
id_rsa_work.pub
公钥复制并粘贴到文本框中id_rsa_work.pub
公钥复制并粘贴到文本框中为每个 Git 托管服务配置独立的 ~/.gitconfig
文件。你可以通过以下方式,创建多个 .gitconfig
文件。
# 为 GitHub 创建一个独立的 gitconfig 文件
cd ~ && touch .gitconfig-work && vim .gitconfig-work
# 为 GitLab 创建一个独立的 gitconfig 文件
cd ~ && touch .gitconfig-personal && vim .gitconfig-personal
在 ~/.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
在 ~/.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
在 ~/.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'
运行 $ gitconfig-work
命令,切换到 GitHub 配置。运行 $ gitconfig-personal
命令,切换到 GitLab 配置。运行 $ gitconfig-default
命令,切换回默认配置。
你现在可以使用不同的 Git 配置,为多个 GitHub 或 GitLab 账户进行管理。
请注意,如果你使用的是 macOS 手动安装的 Git 版本 V2.13,那么它将无法识别 include.path
选项,但你可以使用 cat ~/.gitconfig-work >> ~/.gitconfig
命令将工作 gitconfig 文件的内容添加到全局 gitconfig 文件中。
以上就是为多个账户设置 Git 配置的操作步骤,祝您操作愉快!