Apple Silicon MacでGPG keyを生成してGitHubに登録するまでの覚書
必要なソフトウェアは Homebrew
でインストールして、GPG keyをGit Globalに設定します。
目的の一つ(むしろメイン)は、GitHubのコミットに Verified
と表示させること。
参考
gpg
, pinentry-mac
をHomebrewでインストール。
brew install gpg pinentry-mac
端末買い替え時もインストールされるように Brewfile
に追記した📝
推奨されているコンフィグファイル? ~/.gnupg/gpg-agent.conf
が存在しなかったので作成
mkdir ~/.gnupg
touch ~/.gnupg/gpg-agent.conf
GnuPG
で利用する Pinentry
のパスを指定して、再読み込みさせる
echo "pinentry-program /opt/homebrew/bin/pinentry-mac" > ~/.gnupg/gpg-agent.conf
gpgconf --kill gpg-agent
gpg --list-keys
を実行したら、 ~/.gnupg/pubring.kbx
, ~/.gnupg/trustdb.gpg
が生成された
gpg --full-generate-key
でKeyを作成する。
基本的にデフォルトで進める
- keyの種類
- 有効期間
- Real name
- Email adrdress
- Comment
Pinentry Macが起動してPassphraseの入力を求められる。
.ref
ファイルが作成される。
- pub, uid, sub が表示される。
秘密鍵と公開鍵を出力。ファイル名は自由。
gpg --export-secret-keys XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX > secret.gpg
gpg --armor --export XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX > public.gpg
出力はしたけど、GitHubに登録するために public.gpg
の中身確認にしたのみ。
secret.gpg
は別端末に同じGPG keyをインポートしたいときに使用すると思われる✍️
Git Conifg
(Gitクライアント「Tower」での設定場所も併記)
現在の設定の確認
git config --global -l
user.name
git config --global user.name "Muramatsu Ryunosuke"
user.email
git config --global user.name "muramatsu@altive.co.jp"
gpg.program
git config --global gpg.program "/opt/homebrew/bin/gpg"
user.signingkeyの指定
git config --global user.signingkey "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX"
commit.gpgsign
git config --global commit.gpgsign true
TowerでUserProfileを設定する場合
Globalの設定のみで事足りると思うが、設定する場合↓
Preferences > User Profiles
でUserProfileを新規作成、 GPG key
で作成したKeyを選択する
GitHubに登録
Settings > SSH and GPG keys > GPG keys
の New GPG key
から登録する。
Title
に好きなタイトル、 Key
に PUBLIC keyの内容を入れる。
これにて、コミット時に Verified
が付くようになった🙌