我的工作流程在包的 init .py中嵌入了一个__version__
包变量。使用poetry version patch
(或类似语言)以诗歌形式更新软件包版本时,我也希望更新嵌入的__version__
变量。
我目前使用这样的预提交钩子(git):
#!/bin/bash
read name version < <(poetry version)
read pversion < <(python -c "from ${name} import __version__;print(__version__)")
init=${name}/__init__.py
if [[ "${pversion}" != "${version}" ]]; then
(
cat <<-UPDATEINIT
""" ${name} package"""
__version__ = "${version}"
UPDATEINIT
) >$init
git add $init
fi
有没有一种我想念的更好的方法,因为该钩子似乎有点“笨拙”。