conda 环境导出与恢复

594 字
3 分钟
conda 环境导出与恢复

conda 环境导出与恢复#

conda 环境导出可以帮助复现实验,但导出的文件如果包含太多本机路径和平台依赖,迁移到另一台机器可能反而失败。

我会区分完整备份和跨平台分享两种场景。

完整导出#

Terminal window
conda env export -n myenv > environment.yml

这种方式适合在相似机器上恢复环境,信息最完整,但也可能包含平台相关依赖。

更干净的导出#

Terminal window
conda env export -n myenv --from-history > environment.yml

--from-history 只导出手动安装过的顶层包,更适合项目分享,但可能需要在新机器上重新解析依赖。

恢复环境#

Terminal window
conda env create -f environment.yml
conda activate myenv

如果环境名冲突,可以先修改 yml 里的 name 字段。

检查环境#

  • Python 版本是否一致。

  • CUDA、PyTorch、OpenCV 这类包是否匹配机器。

  • pip 安装的依赖是否也进入 yml。

  • 是否包含本机绝对路径。

实战复盘#

使用《conda 环境导出与恢复》时,我会先确认环境边界:本地还是服务器,Windows 还是 Linux,开发环境还是线上环境。很多命令本身没错,但换了系统或权限就会得到完全不同的结果。

修复后不要只看报错消失,还要做业务层验证。比如端口释放后服务是否重新启动,缓存清理后页面是否显示新内容,pip 安装后目标环境是否真的能 import。

排查记录的质量取决于可复现性。只要别人能按文章从现象走到验证,这篇文章就不是临时笔记,而是一张可靠的操作卡片。

最小验收样例#

验收《conda 环境导出与恢复》时,我会保留一条修复前命令和一条修复后命令。前者证明问题存在,后者证明问题已经消失,而不是只凭浏览器或终端感觉判断。

如果这篇文章涉及服务器操作,还要记录当前路径、用户、服务名和关键配置文件。排查记录越能还原现场,下次遇到同类问题越不需要重新摸索。

小结#

conda 环境导出要看目的。自己备份用完整导出,给别人复现用更干净的历史导出,并写清关键版本。

文章分享

如果这篇文章对你有帮助,欢迎分享给更多人!

conda 环境导出与恢复
https://blog.tjcheng.cn/posts/backfill/2026-06-20/conda-env-export-note/
作者
TengJinCheng
发布于
2026-06-20
许可协议
CC BY-NC-SA 4.0
Profile Image of the Author
TengJinCheng
Hello, I'm Teng.
公告
欢迎来到TengJinCheng工作铺!
音乐
封面

音乐

暂未播放

0:000:00
暂无歌词
分类
标签
站点统计
文章
157
分类
7
标签
114
总字数
109,939
运行时长
0 天
最后活动
0 天前
站点信息
构建平台
Local
博客版本
Firefly v6.13.4
文章许可
CC BY-NC-SA 4.0

文章目录