Шаги воспроизведения: 1. Установить git 2. Добавить в систему gpg ключ. 3. Добавить в git соответствующие настройки: > git config --local user.signingKey <id-ключа> > git config commit.gpgSign true 4. Делаем коммит Ожидаемое поведение: Коммит будет подписан Фактическое поведение: Получаем ошибку следующего вида: > error: gpg failed to sign the data Понятно, что ничего не понятно. Как оказалось, git не настроен на работу с gpg ключами, а именно с gpg2. После выполнения данной команды: > git config --global gpg.program gpg2 Ключ начинает применяться. Проверить можно командой: > echo "test" | gpg2 --clearsign В дополнение скажу что в Fedora такой проблемы нет. Поддержка gpg для git включена "из коробки". Так же была проблема после импорта ключа вывести список добавленных ключей. Команда: > gpg --list-keys Ничего не показывала (хотя в Fedora всё отрабатывало штатно) Оказывается нужно было вызвать gpg2 и тогда я получал необходимый вывод: > gpg2 --list-keys
На втором этапе ключ добавлялся через команду: > gpg --import <файл_ключа>
Результат проверки актуальности Состояние: Ошибка актуальна: в ALT команда gpg — это GnuPG 1.x (пакет gnupg), а gpg2 — GnuPG 2 (gnupg2); в образе Альт Рабочая станция 11.2 установлены оба. git по умолчанию вызывает gpg и не видит ключи из хранилища GnuPG 2. В пакете git настройка gpg.program не задана. Обход: git config --global gpg.program gpg2. Рекомендация: Перенести в Sisyphus / git: задать gpg.program=gpg2 по умолчанию (например, в /etc/gitconfig) или собирать git с путём к gpg2.