1. 程式人生 > 程式設計 >如何給 GitHub commit 加個綠色圖示(教程詳解)

如何給 GitHub commit 加個綠色圖示(教程詳解)

最近一波重灌系統啥都沒了,最常用的 Git 配置肯定得安排回來的。記得之前給 git 的 commit 加了個簽名,回想下為什麼要給 commit 做下簽名?因為它能讓 GitHub 的 commit 歷史更帥?看下加簽名之前是怎麼樣的:

在這裡插入圖片描述

再看下對 commit 簽名後是怎麼樣的:

在這裡插入圖片描述

這麼一對比,是更帥了!但我好像不是因為這的才做的。我是為了更好的去混開源專案做的,這個綠標能更好的證明我的身份!!!(假裝我很專業,2333~)。使用過 Git 的同學應該都曉得,我們的提交作者資訊是可以自己設定的(這意味著我們可以使用他人身份資訊),如下:

$ git config user.name "tester"
$ git config user.email [email protected]

在這裡插入圖片描述

我們可以看到,是可以 push 到 GitHub 的[沒有小綠標而已]。這看起來就不太好,得讓 GitHub 證明下自己得身份才行,從官方文件可以看到, GitHub 提供了一種使用 GPG 的方式可以讓我們的 commit “戴”上小綠標。

忘了當初是怎麼操作的了,在 Windows 下操作貌似還挺麻煩的,趁此捋一下過程,趁機水篇文章。

GNU Privacy Guard(GnuPG或GPG)是一個密碼學軟體,用於加密、簽名通訊內容及管理非對稱密碼學的金鑰。

生成 GPG 金鑰對

第一步肯定就是通過 GPG 生成金鑰對了。這時候需要到一個 GnuPG 軟體,OK,去下載:🔐GnuPG。其實 Git fot windows 自帶一個 gpg 命令列程式,但是命令列用多了,還是上 GUI 愉快點吧,我們選擇使用帶 GUI 的 Gpg4win🔗。

在這裡插入圖片描述

我們通過全家桶軟體之 Kleopatra 新建立一對金鑰,名字為 GitHub 使用者名稱,郵箱為 GitHub 的註冊郵箱(使用 4096 bits的金鑰):

在這裡插入圖片描述
在這裡插入圖片描述

設定 passphrase (通行口令)來保護我們的金鑰對,每次簽名都會用它到。(也可以不設定,不用口令驗證就可以直接使用金鑰)

在這裡插入圖片描述

好了,金鑰對生成完畢。下一步,就是把把公鑰放到 GitHub 上,讓 GitHub 對我們的提交進行驗證,判斷是否該給 commit “戴”上小綠標。[獲取公鑰:滑鼠右鍵->細節->匯出]、[GitHub 新增公鑰:Settings->SSH and GPG keys]。

在這裡插入圖片描述

下一步就是開啟 Git 提交簽名。

啟用 Git 提交簽名

首先,我們需要讓 Git 知道 gpg 的可執行程式在哪裡?gpg 的可執行程式位於Gpg4win🔗同級目錄下的GnuPG/bin中(GnuPG 是 Gpg4win 元件之一),我們需要進行如下配置:

$ git config --global gpg.program <path_to_gpg>

我的設定如下:

$ where gpg
E:\Git\usr\bin\gpg.exe # 這個是 Git for windows 自帶的
E:\GnuPG\bin\gpg.exe # 這個才是我們要用的
$ git config --global gpg.program "E:\GnuPG\bin\gpg.exe"

然後每次git commit時,加上-S即可啟用簽名。

在這裡插入圖片描述

每次都要多打個引數多麻煩,我們通過如下配置讓 Git 預設啟用 GPG 簽名:

$ git config --global commit.gpgsign true

最後我們git push一下看看有沒有效果。
https://github.com/yeshan333/anonymous-git-commit/commits/master

在這裡插入圖片描述

沒問題,收工了。我的 Git 全域性配置如下:

$ cat ~/.gitconfig
[user]
  name = yeshan333
  email = [email protected]
[gpg]
  program = E:\\GnuPG\\bin\\gpg.exe
[commit]
  gpgsign = true

總結

到此這篇關於如何給 GitHub commit 加個綠色圖示(教程詳解)的文章就介紹到這了,更多相關GitHub commit 綠色圖示內容請搜尋我們以前的文章或繼續瀏覽下面的相關文章希望大家以後多多支援我們!