首页 > 解决方案 > 使用 python 从 git 预提交钩子中检索参数

问题描述

我真的在使用 git 钩子,我想制作 python 钩子,因为我的项目已经在 python 中。

如果触发,我掌握了这个概念,但我无法检索参数。我关注了多个文档,但我一直在转圈。

import sys


def main():
    print("Number of arguments: %d", len(sys.argv))
    print("Argument List: %s" % str(sys.argv))

sys.exit(1)


if __name__ == "__main__":
    main()

我尝试了 3.9 和 3.6 python 解释器,我看到人们在一年前发布的视频中争论不休。

我的结果commit -a -m "test"Number of arguments: %d 1; Argument List: ['.git/hooks/pre-commit']

根据我对 python 参数的了解,sys.argv[0]应该始终是可执行文件的名称,之后的任何内容都应该是参数。

我首先尝试通过 gitDesktop 提交,然后使用 gitBash 提交,但正确地停在sys.exit(1)但不给我争论。

以前有人偶然发现过这个吗?

标签: python-3.xgitgithooks

解决方案


推荐阅读