最近多个项目老是需要切换 git 账号,git 命令都输入烦了,就想能不能像 nvm ,或者 nrm 一样管理 git 账户,正好最近写了一个 node-cli 的模板,正好有用武之地,说干就干。
just like nvm
gacm ls gacm use xxx ---local gacm use xxx ---global gacm add --name xxx --email xxx gacm delate user
拉取一下我的模板工具template-node-cli
git config --xxx user.name xxxx git config --xxx user.email xxxx
![]() | 1 passive 2024-03-08 14:33:16 +08:00 via Android ![]() git 自带的 [includeIf "gitdir:~/work/"] path = ~/work/.gitconfig [includeIf "gitdir:~/opensource/"] path = ~/opensource/.gitconfig 不行吗 |
![]() | 2 jiang24gdufs 2024-03-08 15:36:05 +08:00 ![]() 谢谢分享 |
![]() | 3 Goooooos 2024-03-08 15:47:09 +08:00 https://git-scm.com/docs/git-config#Documentation/git-config.txt-codehasconfigremoteurlcode 我用这个方法管理公司的 git 和 github 的账号 |
![]() | 4 zthxxx 2024-03-08 16:51:16 +08:00 这个需求直接用 git config 中自带的能力,includeIf (配合 gitdir 或 hasconfig) 直接自动切配置,并不需要手动切换 包括账号和各种配置,比如两套 ssh-key 给个简单的配置命令就是 git config --global 'includeIf.hasconfig:remote.*.url:[email protected]:zthxxx/**.path' ~/.config/git/github mkdir -p ~/.config/git git config --file ~/.config/git/github user.name zthxxx git config --file ~/.config/git/github user.email zthxxx.me@gmail.com 比如我自己用的就在 https://github.com/zthxxx/init-macOS-dev/blob/f14141a9e03/init-app-preference.sh#L43-L49 |