У меня есть учетная запись Github, связанная с двумя адресами электронной почты (личный + рабочий). Я могу подписывать коммиты только из одной учетной записи, используя git config --global user.signingkey MySigningKey, потому что ключ связан с одним электронным письмом.
Я использую Direnv для фиксации с использованием разных писем в зависимости от каталога, в котором я нахожусь, он работает, устанавливая .envrc с переменной окружения, такой как export [email protected].
Мне было интересно, есть ли аналогичное решение для определения ключей динамической подписи





Примечание: если ваша электронная почта хранится в локальной конфигурации репозитория Git (с git config user.email), ваша фиксация будет использовать правильный адрес электронной почты, когда вам нужно подписать коммиты.
Это означает, что вам не понадобится direnv.
Чтобы параметр Глобальный не мешал репозиториям, использующим электронную почту Другие, вы можете:
user.signingkey только в репозиториях, используя правильный user.email.user.signingkeyГлобальный для этой отдельной учетной записи)
Вы можете установить
user.signingkeyна основе репозитория (без флага--global), чтобы переопределить значение по умолчанию для некоторых репозиториев. Однако это, очевидно, решение только для ограниченного числа репозиториев.