[英]Use gpg to sign git commits in eclipse
github 中有一個很好的功能,表明 git 提交是使用 gpg 密鑰簽名的。
我關注了以下文章:
我現在可以默認使用命令行簽署我的提交和標簽。
(這在 github 存儲庫中也可見/標記為“已驗證”)
但是 eclipse 拒絕(正確地)簽署任何 git 提交(使用 gpg),即使我打開/關閉“退出”按鈕也是如此。 它也沒有顯示提交是否被簽署。
我做錯了什么或者eclipse/egit(還)不能處理gpg?
我使用以下工具
這似乎是 EGit 缺少的功能,您可能應該向http://bugs.eclipse.org建議此增強功能。
這應該可以通過Eclipse 2019-03 (三年后)實現,其中包括 EGit 5.3.0。
EGit 5.3.0 可以使用 GPG 簽署提交。
注意:EGit 5.3.0 需要 Eclipse Neon (4.6) 或更高版本。
所以你可以在你的 Eclipse 中測試它,只要它是 Neon 或更新的。
右上角的新圖標將允許您切換提交簽名的開啟或關閉。
默認值是從 Git 配置中讀取的。
如果配置選項commit.gpgsign
設置為true
,則默認情況下將選擇該按鈕。
user.signingkey
的值將用於確定簽名密鑰。
- 如果未設置該值,則提交者的電子郵件地址將用於查找密鑰。
- 如果找不到密鑰,則提交將失敗。
將從您的 GPG 密鑰環中查找密鑰(
~/.gnupg/pubring.kbx
或~/.gnupg/secring.gpg
;
在 Windows 上,使用目錄%APPDATA%\\gnupg
(如果存在)而不是~/.gnupg
)。有關 GPG 簽名密鑰的幫助,請參閱以下 GitHub 幫助頁面:
2022 年更新:
從 EGit 5.11 (Eclipse 2021-03) 開始,您可以
您還可以在 Eclipse 提交時自動簽署提交
以下對我有用:
添加您的簽名密鑰(替換0150436D9CD488B3
,請參閱https://docs.github.com/en/authentication/managing-commit-signature-verification/telling-git-about-your-signing-key如何找到您的)
git config --global user.signingkey 0150436D9CD488B3
添加您的 GPG 安裝(替換路徑):
git config --global gpg.program "C:\Program Files\Git\usr\bin\gpg.exe"
將自動簽名設置為 true:
git config --global commit.gpgsign = true
這在 2016 年遇到了 JGit,最初的請求是在 2012 年提出的,並且仍然處於新狀態: https ://bugs.eclipse.org/bugs/show_bug.cgi?id=382212。 可悲的是,在這方面沒有太多明顯的吸引力。
可能是時候考慮 git 2.34 或更高版本了,您可以在其中使用 SSH 密鑰來簽署 git 提交和標記。 自 2021 年底以來一直存在。Git 使用ssh-keygen -Y
對內容進行簽名和驗證。 現在我們都在 2.35.1 上,我的團隊正朝着這個方向前進。 我們以前為此目的使用 GPG。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.