是否应将build、dist文件夹纳入GitHub仓库,还是仅提交spec文件?
结论:不要将PyInstaller生成的build和dist文件夹提交到主仓库
核心共识
行业内的通用做法是不提交构建派生文件到源码仓库,build和dist就属于这类产物。
具体理由
- 仓库体积问题:打包后的文件体积通常远大于源码,提交后会持续膨胀仓库大小,不仅拉取仓库速度变慢,还会占用额外的存储资源。
- 可重复性保障:你提到的spec文件+源码+依赖清单(比如
requirements.txt)已经足够让任何新用户通过pyinstaller your_app.spec命令重新构建出一致产物,提交产物完全没必要。 - 避免版本混乱:不同环境(Python版本、PyQt版本、系统架构)构建出的产物可能存在差异,提交后会导致团队成员拿到的包不一致,反而增加排查问题的成本。
针对你场景的实操建议
- 立刻把
build/和dist/添加到仓库的.gitignore文件中,避免后续误提交。 - 编写一份简单的构建指南,放到仓库的
README.md里:- 安装依赖:
pip install -r requirements.txt - 执行构建:
pyinstaller your_app.spec
方便硬件团队和其他同事快速上手。
- 安装依赖:
- 如果硬件团队不想自己构建,可以在内部CI/CD流程里配置自动构建,把生成的安装包(比如InstallForge打包后的文件)上传到内部共享存储,他们直接下载使用即可,不用接触源码构建流程。
内容的提问来源于stack exchange,提问作者Noah Cunningham Baker
相关产品推荐
相关产品推荐

