git配置(1): 根据remote自动选择账号执行commit

git配置(1): 根据remote自动选择账号执行commit

在公司电脑上, 克隆了 github 的仓库, 也克隆了内网 gitlab 的仓库。

希望 commit 和 push 到内网 gitlab 时, 使用公司账号; commit 和 push 到 github 时, 使用个人账号。

原本以为 ~/.gitconfig 只能配置单个账户:

复制代码
[user]
    name = my_personal_name
    email = my_personal_email@foxmail.com    

发现 git 2.45 版本可以根据正则匹配到 remote 或 branch, 来载入特定的配置文件; 特定配置文件中使用公司账号即可:

https://git-scm.com/docs/git-config#_includes

bash 复制代码
[includeIf "hasconfig:remote.*.url:https://*.my_company.com/**"]
    path = .gitconfig-my_company

.gitconfig-my_company 内容:

复制代码
[user]
    name = my_account_at_company
    email = my_account_at_company@my_company.com

ubuntu-22.04 默认 git 版本不识别上述语法, 需要加 ppa 源更新 git:

bash 复制代码
sudo add-apt-repository -y ppa:git-core/ppa
sudo apt-get update
sudo apt-get install git -y

参考:

相关推荐
pe7er15 小时前
git submodule简易指南
git
xiaocainiao88116 小时前
Python 实战:构建 Git 自动化助手
git·python·自动化
Casia_Dominic1 天前
【三维重建工具】NeRFStudio、3D GaussianSplatting、Colmap安装与使用指南
git·3d·github·点云
构建的乐趣1 天前
运行ssh -T git@github.com报错
git·ssh·github
落雪小轩韩2 天前
Git 常用操作与注意事项全攻略
大数据·git
winds~2 天前
【Git】git的回退功能
大数据·git·elasticsearch
Ring__Rain2 天前
git fetch的使用
git
b1ng2 天前
新人程序员 Git 一站式指南
git·github
程序员的世界你不懂2 天前
IDE 关联 Git 操作
ide·git