Для создания подписи коммита в Git необходимо:
gpg --gen-key
).git config --global user.signingkey <ваш_gpg_ключ>
где <ваш_gpg_ключ>
- это ID вашего GPG-ключа.
-S
или --gpg-sign
:
git commit -S -m "Ваш коммит"
или
git commit --gpg-sign -m "Ваш коммит"
git config --global commit.gpgsign true
После этого каждый коммит будет подписан вашим GPG-ключом.
Для создания подписи коммита в Git используется система цифровых подписей GPG (GNU Privacy Guard). Вот основные шаги и объяснения:
Сначала убедитесь, что GPG установлен в вашей системе. На Linux обычно можно установить через менеджер пакетов (например, `sudo apt-get install gnupg2` на Debian/Ubuntu или `sudo yum install gnupg2` на CentOS/RHEL). На macOS можно использовать Homebrew (`brew install gnupg`). Для Windows можно скачать установщик с сайта GnuPG.
Если у вас нет GPG ключа, его нужно создать. Откройте терминал и выполните команду:
gpg --gen-key
Следуйте инструкциям на экране. Вам будет предложено выбрать тип ключа, размер ключа и срок действия. Рекомендуется использовать RSA и размер ключа не менее 2048 бит. Также нужно будет ввести имя, email и необязательный комментарий для вашего ключа. После этого потребуется ввести пароль для защиты вашего ключа.
После генерации ключа, вам понадобится его ID. Выполните команду:
gpg --list-secret-keys --keyid-format long
Найдите свой ключ в списке. ID ключа - это длинная строка, начинающаяся с `sec` или `sec#`. Например: `sec rsa2048/3AA5C34371567BD2 2024-01-01 [SC]` ID ключа в данном случае `3AA5C34371567BD2` (возьмите часть после слэша '/').
Сообщите Git, какой ключ использовать для подписи. Выполните команду, заменив `YOUR_GPG_KEY_ID` на ваш ID ключа:
git config --global user.signingkey YOUR_GPG_KEY_ID
Вы также можете указать, что хотите подписывать все коммиты по умолчанию:
git config --global commit.gpgsign true
Теперь вы можете подписать коммит. Если вы настроили `commit.gpgsign` в `true`, то каждый коммит будет подписываться автоматически. В противном случае, можно явно указать опцию `-S` при коммите:
git commit -S -m "Your commit message"
При выполнении этой команды, вам будет предложено ввести пароль для вашего GPG ключа.
Чтобы проверить подпись коммита, выполните команду:
git log --show-signature
Эта команда покажет информацию о коммитах, включая информацию о подписи. Если коммит подписан корректно, вы увидите сообщение "Good signature".
Важно: Защитите свой GPG приватный ключ. Не делитесь им и храните его в безопасном месте. Также, убедитесь, что ваш публичный ключ добавлен в вашу учетную запись на платформах, таких как GitHub, GitLab или Bitbucket, чтобы другие могли проверить подлинность ваших коммитов.