GitHubのコミット履歴にVerifiedマークを付けるためにGPGの設定をした (Windows編)
Mac編はこちら
Windows編
GPGインストール
公式サイトよりダウンロードします。
ページ内の最初のリストはソースコードです。その次のリストがバイナリなので、この中から Simple installer for the current GnuPG をダウンロードします。
ダウンロードしたらインストーラー (gnupg-w32-2.2.13_20190212.exe) を起動します。ウィザードが立ち上がるので Next⇒Next⇒Install⇒Next⇒Finish って感じです。
インストールが完了したらコマンドラインを立ち上げてgpgコマンドを打ってみます。
C:\Users\my-user-name> gpg gpg: keybox'C:/Users/my-user-name/AppData/Roaming/gnupg/pubring.kbx'が作成されました gpg: *警告*: コマンドが指定されていません。なにを意味しているのか当ててみます ... gpg: 開始します。メッセージを打ってください ... ^C
後の手順は先日書いたMacでの手順と"ほぼ"同じです。同じな部分は箇条書きで紹介。
- gpg --full-generate-key
- gpg --list-secret-keys --keyid-format LONG
- gpg --armor --export ○○○
- 結果をコピーしてGitHubのSettings⇒SSH and GPG keys⇒New GPG Key
- git config --global user.signingkey ○○○
- git config --global commit.gpgsign true
っときっとここまでは順調に進むと思いますが、コミットしようとすると次のようなメッセージが出ることがあります。
> git commit -m "test" gpg: skipped "8H7G6F5E4D3C2B1A": secret key not available gpg: signing failed: secret key not available error: gpg failed to sign the data fatal: failed to write commit object
解決方法はgitの設定でgpg.programにgpg.exeの場所を教えてあげる必要があります。
> git config --global gpg.program "C:\Program Files (x86)\gnupg\bin\gpg.exe"
これでWindowsでも無事にVerified署名付きでコミットできました!