GitHubにGPGキーを追加して、署名付きコミットを有効にする

に投稿

に更新


Windows10 で Git Bash を使用したときの方法です

GPG キーペアを作成する

  1. Git Bashを開く
  2. gpg --full-generate-keyを実行する
  3. Please select what kind of key you wantに好きな暗号方式を番号で答える(ここではRSA and RSAを選択)
  4. What keysize do you want?に答える(ここでは4096bitに設定)
  5. Key is valid for?に答える(ここでは有効期限を1年に設定)
  6. 入力した内容に間違えが無ければ、yを入力して Enter
  7. Real nameに自分が GitHub で使用してる名前を入力
  8. Email addressに自分が GitHub で使用している名前を入力
  9. Commentは記入してもしなくてもいい
  10. ウィンドウが出てくるので、パスワードを入力する(忘れないように紙にでもメモしておくこと)

公開鍵を GitHub に登録する

gpg -K --keyid-format LONGを実行して、さっき作成したキーの ID をコピーする

ここでは3AA5C34371567BD2をコピーします

$ gpg --list-secret-keys --keyid-format LONG
/Users/hubot/.gnupg/secring.gpg
sec 4096R/3AA5C34371567BD2 2016-03-10 [expires: 2017-03-10]
uid Hubot
ssb 4096R/42B317FD4BA89E7A 2016-03-10

コミット時に署名する

  1. git config --global user.signingkey コピーしたキーIDを実行
  2. git config --global commit.gpgsign trueを実行

これでコミットを作成するときに、パスワードの入力を求めるウィンドウが出てくるので、キーペアを作成するときに登録したパスワードを入力すれば、署名できる

公開鍵を出力する

gpg -a --export コピーしたキーIDを実行して、-----BEGIN PGP PUBLIC KEY BLOCK-----から-----END PGP PUBLIC KEY BLOCK-----までを全て選択してコピーする

公開鍵を GitHub に登録する

  1. https://github.com/settings/gpg/new を開く
  2. さっきコピーした公開鍵を貼り付けて、Add GPG Keyをクリック

これで完了、後は GitHub のリポジトリにコミットすると、下の画像のような感じになっていれば署名成功

署名に成功したときの画像「This commit was signed with the committer’s verified signature.」と書かれている

参考