gpt4 book ai didi

Mercurial hook 在推送到存储库时测试用户名是否有效

转载 作者:行者123 更新时间:2023-12-01 11:57:22 24 4
gpt4 key购买 nike

我有一个“中央”存储库,我想确保没有人使用错误的用户名推送更改。

但我不知道如何制作一个钩子(Hook)来根据肯定列表测试用户名。我在 Mercurial API 中找到了一个

ctx.user()
这似乎是我想要测试我的肯定列表所针对的调用。

Hook 也可以是作为存储库克隆的一部分分发的预提交 Hook ,或者它可以是中央存储库上的 Hook 作为预传入或类似的东西。

如有任何帮助或指点,我们将不胜感激。

最佳答案

我已经在 Bitbucket 上发布了两个功能示例。这两个示例都用于在提交消息中搜索某些特定格式的文本(如问题跟踪案例 ID),但可以轻松修改以根据有效用户列表检查用户。

The first example实际上是一个 Mercurial extension包装“提交”命令。如果它找不到合适的文本(或您的情况下的有效用户),它将完全阻止提交发生。您可以通过添加以下行在 .hgrc 文件中启用此功能:

[extensions]
someName = path/to/script/commit-msg-check.py

The second example使用进程内 pretxncommit Hook ,它在提交完成之间运行,但在它成为永久性之前运行。如果此检查失败,它将自动回滚提交。您可以通过添加以下行在您的 .hgrc 文件中启用此功能(假设您保留相同的文件/函数名称):

[hooks]
pretxncommit.example = python:commit-msg-check-hook.CheckForIssueRecord

您可以在这些 Hook 中执行您喜欢的任何 Python 代码,因此可以通过多种方式完成用户验证。

关于Mercurial hook 在推送到存储库时测试用户名是否有效,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5675907/

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