gpt4 book ai didi

git - 如何限制推送操作以仅允许在 github 中使用 GPG 签名的提交

转载 作者:太空狗 更新时间:2023-10-29 13:42:43 44 4
gpt4 key购买 nike

我有一个 Github 存储库,我们共享它用于我们的开发。为了确保完整性,我们决定使用 GPG 签署我们的提交和标签。

现在,我如何防止开发人员将未签名的提交推送到我们在 Github 中的存储库以及将 GPG 公钥列入白名单以允许推送使用白名单公钥签名的提交

我检查了一些 pre-pushing 钩子(Hook),但没有按照我上面描述的方式解决,这里是。

remote="$1"
url="$2"

z40=0000000000000000000000000000000000000000

IFS=' '
while read local_ref local_sha remote_ref remote_sha
do
if [ "$local_sha" = $z40 ]
then
# Handle delete
else
if [ "$remote_sha" = $z40 ]
then
# New branch, examine all commits
range="$local_sha"
else
# Update to existing branch, examine new commits
range="$remote_sha..$local_sha"
fi

# Check for WIP commit
commit=`git rev-list -n 1 --grep '^WIP' "$range"`
if [ -n "$commit" ]
then
echo "Found WIP commit in $local_ref, not pushing"
exit 1
fi
fi
done
exit 0

我怎样才能做到这一点?任何概念或示例将不胜感激。

最佳答案

看起来您在 GitHub Enterprise 上并尝试 create a pre-receive hook script拒绝任何未签名的提交 - 正确吗?如果是这样,这里是 an open source GPG script来自 GitHub。如果您在 GitHub.com 上,请注意它们不支持预接收 Hook ,您需要设置一个 protected branch with required status check。拒绝未签名的作品。

至于设置key,你查了吗this article

关于git - 如何限制推送操作以仅允许在 github 中使用 GPG 签名的提交,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42291788/

44 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com