GnuPG (簡稱 GPG),允許作者對資料與通信進行加密與簽章。你可以在本地端使用 GPG 對 Commit 與 Tag 進行簽章,再推送(Push) 至 GitHub 時,GitHub 會以公開金鑰進行驗證,確認變更來源,讓其他人確信這次的變更來源是可以信任的。
產生 GPG Key pair 並上傳 public key 至 GitHub
點選開始 > 輸入 Git Bash > 開啟 Git Bash (需要安裝 Git,請自行安裝,這裡不在贅述)
輸入指令 gpg --full-generate-key,並依序輸入(如下圖所示)
選項 1: 1 (RSA and RSA)
選項 2: 4096
選項 3: 直接 Enter (使用預設0)
選項 4: Y
輸入你的 ID 與信箱,Comment 可以留空白,最後選擇 O
輸入你的金鑰密碼2次 (第二次為確認密碼)
輸入指令 gpg --list-keys --keyid-format LONG,列出安裝於本機的金鑰組合
輸入指令 gpg --armor --export [上途中紅色線部分] | clip,即可複製公開金鑰
點選右上角個人頭像旁的下拉選單 > Settings
左邊選單找到 SSH and GPG keys,點選 New GPG Key
9.貼上公開金鑰,點選 Add GPG key,即完成設定
Sign Commit
在 local 端以命令列開啟專案位置,輸入 git config commit.gpgsign true,並且輸入 git config --global gpg.program "C:\Program Files\Git\usr\bin\gpg.exe" 設定 gpg 位置
簡單程式做一些變更後,commit/push 你的程式,回到你的 Repo,點選剛剛更新的 commit
可以看見 Commit 多了 Verified 標註
參考資料
1.GnuPG
0 留言