Перейти до вмісту

Noleron Git

Матеріал з Noleron Wiki
Версія від 02:34, 13 вересня 2026, створена Lesyk (обговорення | внесок) (Відновлено стан до карток сервісів)
(різн.) ← Попередня версія | Поточна версія (різн.) | Новіша версія → (різн.)


NoleronЦя стаття описує сервіс Project Noleron.
Інформація на сторінці стосується призначення, можливостей або використання одного із сервісів Noleron.

Noleron Git — Git-сервіс Noleron на базі Forgejo.

Ця сторінка пояснює, як налаштувати GPG-підпис комітів і додати відкритий ключ до облікового запису Forgejo.

Встановлення інструментів

Windows

Встановіть Gpg4win і перевірте, що Git використовує потрібну версію GPG:

git config --global gpg.program "C:\Program Files (x86)\GnuPG\bin\gpg.exe"

macOS

brew install gpg2 gnupg pinentry-mac
mkdir -p ~/.gnupg
echo "pinentry-program $(brew --prefix)/bin/pinentry-mac" >> ~/.gnupg/gpg-agent.conf
echo "use-agent" >> ~/.gnupg/gpg.conf
echo 'export GPG_TTY=$(tty)' >> ~/.bash_profile

Для Zsh використовуйте `~/.zprofile` замість `~/.bash_profile`.

Створення GPG-ключа

gpg --full-generate-key

Рекомендовані параметри:

  • тип ключа: RSA and RSA;
  • розмір: 4096;
  • термін дії: 0 — безстроковий ключ;
  • ім’я та email: ті самі, що використовуються в Git;
  • парольна фраза: довга й унікальна.

Перегляньте ключі та знайдіть свій ідентифікатор:

gpg --list-secret-keys --keyid-format LONG

У подальших командах замініть `KEYID` на свій ідентифікатор.

Щоб експортувати відкритий ключ:

gpg --armor --export KEYID

Секретний ключ нікому не передавайте.

Імпорт наявного ключа

gpg --import my-key.asc
gpg --edit-key KEYID

У консолі GPG виконайте:

trust
5
quit

Додавання ключа до Forgejo

  1. Експортуйте відкритий ключ командою `gpg --armor --export KEYID`.
  2. Відкрийте налаштування профілю у Forgejo.
  3. Перейдіть до розділу SSH / GPG Keys або відповідного розділу ключів.
  4. Додайте повний текст відкритого ключа.
  5. Переконайтеся, що email ключа збігається з email автора комітів.

Налаштування Git

git config --global user.signingkey KEYID
git config --global commit.gpgsign true

Для одного коміту:

git commit -S -m "Підписаний коміт"

Перевірити підпис локально:

git log --show-signature -1
git verify-commit HEAD

Кешування парольної фрази

Windows

У Kleopatra відкрийте Settings → Configure Kleopatra → GnuPG System → Private Keys і встановіть кешування PIN на `28800` секунд.

macOS

Під час першого підпису дозвольте зберігання парольної фрази в системному Keychain, якщо довіряєте цьому комп’ютеру.

Ubuntu та інші Linux

mkdir -p ~/.gnupg
echo "default-cache-ttl 28800" >> ~/.gnupg/gpg-agent.conf
gpgconf --reload gpg-agent

Перевірка у Forgejo

Створіть тестовий підписаний коміт і відправте його до репозиторію. У Forgejo коміт має відображатися як Verified.

Якщо підпис не перевіряється, перевірте:

  • email у Git збігається з email GPG-ключа;
  • до Forgejo додано саме відкритий ключ;
  • `user.signingkey` містить правильний `KEYID`;
  • локально працює `gpg --verify`;
  • дата й термін дії ключа актуальні.

Безпека ключа

  • Зберігайте резервну копію секретного ключа офлайн.
  • За можливості використовуйте апаратний ключ, наприклад YubiKey.
  • Не передавайте секретний ключ через email, чати або незашифровані файли.
  • Не публікуйте парольну фразу.

Додаткові матеріали