exp pull
从 Git 远端下载 实验,并从 远程存储 下载其相关数据。
概要
usage: dvc exp pull [-h] [-q | -v] [-A] [--rev <commit>] [-n <num>] [-f]
[--no-cache] [-r <name>] [-j <number>]
[--run-cache | --no-run-cache]
git_remote [experiment ...]
positional arguments:
git_remote Git remote name or Git URL
experiment Experiment to pull描述
dvc exp push 和 dvc exp pull 命令是通过 Git 和 远程存储 在多个 仓库 副本间共享 实验 的方式。
普通的
git push和git fetch不适用于实验,因为实验是保存在自定义 Git 引用下的。有关 DVC 实验存储的更多信息,请参阅 DVC 实验概览 中的 “DVC 如何跟踪实验?”。
需要提供一个有效的 git_remote 名称(例如 origin)或 Git URL。默认情况下会拉取来自 HEAD 提交的实验(详见下方选项)。
dvc exp pull 的首要操作是从 Git 远端下载 experiments,使其在本地仓库中可用(等同于 git fetch <git_remote> refs/exps/<experiment>)。使用 dvc exp show 来浏览本地实验。
默认情况下,此命令还会尝试通过 dvc pull 下载与实验关联的所有 缓存 数据至 远程存储,除非使用了 --no-cache 选项。
选项
-
-A,--all-commits- 拉取仓库中的所有实验(覆盖--rev和--num)。 -
--rev <commit>- 以指定的<commit>为基线拉取其衍生的实验(默认为 HEAD)。 -
-n <num>,--num <num>- 从--rev基线开始,拉取最近num个提交(首个父提交)衍生的实验。传入负值可包含所有首个父提交(类似git log -n)。 -
-f,--force- 若本地仓库中已存在该实验,则覆盖它。 -
--no-cache- 不从 DVC 远程存储拉取与此实验关联的缓存文件。 -
-r <name>,--remote <name>- 从中拉取缓存文件的dvc remote名称。 -
--run-cache,--no-run-cache- 是否从dvc remote下载所有可用的 阶段运行 历史(仅存入缓存,类似dvc fetch --run-cache)。注意,需使用dvc exp run <stage_name>才能检出这些文件。默认为--no-run-cache。 -
-j <number>,--jobs <number>- DVC 向远程存储上传数据的并行级别。默认值为4 * cpu_count()。注意,可通过dvc remote modify的jobs配置项设置默认值。增加并行数可能提升整体传输速度。 -
-h,--help- 显示帮助信息并退出。 -
-q,--quiet- 不向标准输出写入任何内容。如果没有问题则以 0 退出,否则以 1 退出。 -
-v,--verbose- 显示执行dvc pull命令时的详细跟踪信息。
示例
本示例基于 我们的入门指南,您可在其中找到实际源代码。
假设我们克隆了一个 DVC 仓库,并希望获取他人共享的实验(另请参阅 dvc exp list)。
$ dvc exp list --all-commits origin
main:
lurid-air
$ dvc exp pull origin
Pulled experiment 'lurid-lair' from Git remote 'origin'.我们现在可以看到实验存在于本地仓库中:
$ dvc exp list --all-commits
main:
5cdc6a9 [lurid-air]