git commit に署名を付ける
背景
先日とある repository に contribute した時に、署名付き commit が必要になったので、設定した記録。
署名付き commit とは
これのこと。
GPG キーの作成から設定まで
こちらに記載の手順の通り。
https://docs.github.com/ja/github/authenticating-to-github/generating-a-new-gpg-key#generating-a-gpg-key
gpg を install。
$ brew install gpg
GPG キーペアを生成。
$ gpg --full-generate-key
途中、ユーザ ID 情報で本名、メールアドレス、コメントの入力を順に求められるが、コメントについては空で問題ない。
$ gpg --list-secret-keys --keyid-format LONG
上記コマンドで表示されるGPGキーIDをコピーして、下記コメントで GPG キーをクリップボードにコピー。
$ gpg --armor --export <GPGキーID> | pbcopy
あとは下記ページを参照して、 GPG キーを GitHub アカウントに追加する。 https://docs.github.com/ja/github/authenticating-to-github/adding-a-new-gpg-key-to-your-github-account
署名付きコミットをする
-S
オプション付きで commit する。
$ git commit -S "Commit message"