I doubt there is a need to introduce Git here. This note will be the few tips I collect over time.

Directory-based config

[includeIf "gitdir:~/company_a/"]
  path = .gitconfig-company_a
[includeIf "gitdir:~/company_b/"]
  path = .gitconfig-company_b

Use KWallet for credential

I’m on archlinux-based distro.

  1. install libsecret
  2. git config —global crendential.helper /usr/lib/git-core/git-credential-libsecret