Documentation Index
Fetch the complete documentation index at: https://docs.z23.cc/llms.txt
Use this file to discover all available pages before exploring further.
Git 安全:提交签名
通过 GPG 签名提交和标签,可以验证代码的真实来源,提高项目安全性,确保接收的代码确实来自可信的开发者。这在开源项目中尤为重要。
提交签名: 验证代码来源和完整性
设置步骤:
-
生成 GPG 密钥:
gpg --full-generate-key
# 选择密钥类型,推荐 RSA and RSA (default)
# 输入密钥大小:4096
# 设置有效期
# 输入个人信息(与 Git 配置保持一致)
-
获取并配置 GPG 密钥:
# 查看密钥列表
gpg --list-secret-keys --keyid-format=long
# 从输出中找到密钥 ID
# sec rsa4096/XXXXXXXXXXXXXXXX <-- 这是密钥 ID
# 配置 Git 使用此密钥
git config --global user.signingkey XXXXXXXXXXXXXXXX
-
签名提交和标签:
# 启用自动提交签名(所有提交都会签名)
git config --global commit.gpgsign true
# 单个提交的签名
git commit -S -m "添加安全功能"
# 签名标签 (默认情况下 -s 标志就会签名)
git tag -s v1.0.0 -m "版本 1.0.0 发布"
-
验证签名:
# 验证已签名的提交
git verify-commit HEAD
# 验证已签名的标签
git verify-tag v1.0.0
配置 GitHub/GitLab 验证签名:
- 导出你的公钥:
gpg --armor --export XXXXXXXXXXXXXXXX
- 复制输出的公钥块(包括首尾行)
- 将公钥添加到你的 GitHub/GitLab 账户设置中
常见问题解决:
- 签名失败: 确保设置了正确的 GPG 密钥,在 Windows 上可能需要额外安装 GPG 工具。
- 验证签名失败: 确保导入了签名者的公钥到你的 GPG 密钥环。
使用 GPG 签名可以增加一层安全保障,确认提交和标签的来源是可信的。