GPG Key 可以讓我們的 commit 都確定是我們本人所新增的。我覺得很不錯!!推薦大家使用。
可以照著這篇文章做:參考文章 from Peter。
Preparation
- 下載並安裝 GPG 的 CLI 工具:Mac OS X 下載處,有兩個檔案,分別是 DMG 和 sigature。
Step 1: 產生 GPG key
檢查版本
gpg --version
透過 gpg 產生 keys
- ≥ 2.1.17
gpg --full-generate-key
- < 2.1.17
gpg --default-new-key-algo rsa4096 --gen-key
建議:
- GitHub 要求 RSA 加密
- 長度:4096,不建議超過這長度
- expiration:絕不
- 輸入名稱及 Email,比如說公司信箱
- 設定 GPG 密碼,並確認
Step 2: 確認
- 顯示新產生的 Key ID,複製起來( rsa4096 後面那串值)
gpg --list-secret-keys --keyid-format LONG
Step 3: 擷取 GPG 需要的資料
- 複製上一步驟取得的 ID,然後執行:
gpg --armor --export [ the Key ]
gpg --armor --export DEA763A6C33D812A
- 會顯示:
-----BEGIN PGP PUBLIC KEY BLOCK-----
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
-----END PGP PUBLIC KEY BLOCK-----
Step 4: 將 GPG Key 加到 GitHub 中
Avatar > Settings > SSH and GPG keys Page
- 點擊 New GPG Key
- 複製第三步驟時產生的 GPG Key
Step 5: 在 local 端的 config 加上我們的 GPG key ID
git config --global user.signingkey [insert id from step 2]
Step 6: commit 時預設啟用 GPG
git config --global commit.gpgsign true
Step 7: Commit 試看看
git commit -S -m "added 2020"
- 這時會需要輸入 GPG 密碼,就會顯示 verifed。
留言