DevGang
Авторизоваться

Работа с несколькими Gitconfig

Эта статья будет кратким советом, если вы используете несколько gitconfig на одной локальной машине. Например, если вы работаете с Gitlab/Bitbucket/Github с разными адресами электронной почты/именем пользователя/gpgsign или работаете со своей личной и рабочей учетной записью git на одном компьютере.

Настройка каталога Gitconfig

Это имя каталога может быть любым, но ради соглашения об именах давайте назовем его ~/.gitconfig.d/.

$ mkdir -p "$HOME/.gitconfig.d/" && cd "$_" 
$ pwd 
/Users/clavianus.juneardo/.gitconfig.d

Настройка каждого Gitconfig

Теперь вы создали каталог, допустим, вы хотите установить свою учетную запись  personal и work:

Настройка личного Gitconfig

$ git config --file=personal user.name "foo" 
$ git config --file=personal user.email " foo@gmail.com " 
$ git config --file=personal core.editor "vim" 
...

С помощью --file=personal флага gitconfig будет настроен внутри personal файла.

$ cat personal
[user]
 name = foo
 email = foo@gmail.com
[core]
 editor = vim

Теперь давайте проделаем то же самое с вашей рабочей учетной записью.

Настройка работы Gitconfig

$ git config --file=work user.name "foo bar" 
$ git config --file=work user.email " foo@company.com " 
$ git config --file=work user.signingKey "ABCDEF012345" 
$ git config --file=work commit.gpgsign true 
$ git config --file=work core.editor "vim" 
...
$ cat work 
[user] 
name = foo bar 
email = foo@company.com
 signingKey = ABCDEF012345 
[commit] 
gpgsign = true 
[core] 
editor = vim

Теперь вы установили обе свои учетные записи. Тогда как переключаться между каждым gitconfig?
Допустим, вы разместили весь каталог git вашей компании по адресу, ~/Works а свой — по адресу ~/Personals. Вы можете легко переключиться, настроив глобальный gitconfig с помощью includeIf.

cat <<EOF > ~/.gitconfig
[includeIf "gitdir:~/Works/"]
  path = ~/.gitconfig.d/work
[includeIf "gitdir:~/Personals/"]"
  path = ~/.gitconfig.d/personal
EOF

Вывод

Теперь каждый раз, когда вы внутри ~/Works/, вы используете ~/.gitconfig.d/work, а когда вы внутри ~/Personals/, вы используете ~/.gitconfig.d/personal.

Вы можете проверить, правильно ли загружается gitconfig, просто выполнив git config user.email команду и увидев, какая электронная почта появляется.

#Git
Комментарии
Чтобы оставить комментарий, необходимо авторизоваться

Присоединяйся в тусовку

В этом месте могла бы быть ваша реклама

Разместить рекламу