如何使用Poetry构建Python包时排除.env文件?
解决Poetry构建Python包时忽略.env文件的方法
方法1:通过pyproject.toml全局排除
直接在项目的pyproject.toml中添加排除规则,通配符**可以匹配项目内任意位置的.env文件:
[tool.poetry] # 保留原有配置... exclude = ["**/.env"]
配置后,每次执行poetry build都会自动跳过所有目录下的.env文件。
方法2:借助.gitignore同步排除
如果你的项目已经用.gitignore忽略了.env,Poetry默认会遵循.gitignore的规则(前提是没有在pyproject.toml中设置include规则覆盖此行为)。只需在.gitignore中添加:
.env **/.env
无需额外修改Poetry配置,构建时就会自动排除这些文件。
方法3:单次构建临时排除
如果只是临时需要忽略.env,不想修改配置文件,可以在构建命令中直接指定排除规则:
poetry build --exclude "**/.env"
该规则仅对当前这次构建生效,适合临时场景。
额外提示
- 若之前有旧的构建产物,建议先清理再重新构建:
poetry build --clean - 检查
pyproject.toml中的include配置,确保.env不在被主动包含的文件列表中
内容的提问来源于stack exchange,提问作者Hyaz Oulephant
相关产品推荐
相关产品推荐

