id = "dvc" name = "DVC" homepage = "https://dvc.org/" description = "Manage data the way code is managed." executables = ["dvc"] [dotfiles] # The official `dvc config` reference lists these as the --global locations: # macOS uses Application Support, Linux uses the XDG config directory, and # Windows uses LocalAppData. Project `.dvc/config` and `.dvc/config.local` are # deliberately omitted because they belong to an individual repository. # https://github.com/treeverse/dvc.org/blob/main/content/docs/command-reference/config.md paths = [ "~/.config/dvc/config", "~/Library/Application Support/dvc/config", "%LOCALAPPDATA%/iterative/dvc/config", ] exclude = [] # The same reference says credentials and private locations belong in the # Git-ignored --local file, not these global files, so no whole-file secret is # claimed here. secret = [] [commands] format = 1 label = "Data Version Control" description = "Common DVC jobs: track data, push and pull it, and reproduce pipelines. Other subcommands (experiments, metrics, plots, remote setup) are not covered." quality = "ai-draft" parser = { end_of_options = "--", interleave = "permute", long_equals = true, short_attached = false, short_bundles = false } [[commands.source]] id = "help" kind = "help" url = "https://dvc.org/doc/command-reference" revision = "dvc --help (installed)" evidence = """ usage: dvc [-q | -v] [-h] [-V] [--cd ] [--wait-for-lock] command ... --cd Change to directory before executing. """ [[commands.field]] id = "cd" label = "Run in directory" type = "path" option = ["--cd"] path = { kind = "directory", role = "input" } sources = ["help"] [[commands.group]] id = "basic" label = "Basic" fields = ["cd"] [[commands.subcommand]] path = ["add"] label = "Track data" description = "Track files or directories with DVC. Remote upload, glob and relink options are left out." [[commands.subcommand.source]] id = "help" kind = "help" url = "https://dvc.org/doc/command-reference/add" revision = "dvc --help (installed)" evidence = """ usage: dvc add [-h] [-q | -v] [--no-commit] [--glob] [-o ] [--to-remote] targets Input files/directories to add. --no-commit Dont put files/directories into cache. --glob Allows targets containing shell-style wildcards. -o, --out Destination path to put files to. -f, --force Override local file or folder if exists. """ [[commands.subcommand.field]] id = "targets" label = "Files or directories" type = "path" position = 0 multiple = true min = 1 path = { kind = "any", role = "input", must_exist = true } sources = ["help"] [[commands.subcommand.field]] id = "no_commit" label = "Do not put into cache" type = "boolean" option = ["--no-commit"] sources = ["help"] [[commands.subcommand.field]] id = "glob" label = "Targets are wildcards" type = "boolean" option = ["--glob"] sources = ["help"] [[commands.subcommand.field]] id = "out" label = "Destination path" type = "path" option = ["--out", "-o"] path = { kind = "any", role = "output", must_exist = false } sources = ["help"] [[commands.subcommand.field]] id = "force" label = "Override existing" type = "boolean" option = ["--force", "-f"] effect = "overwrite" sources = ["help"] [[commands.subcommand.task]] id = "add" label = "Track files" fields = ["targets"] required = ["targets"] [[commands.subcommand.group]] id = "basic" label = "Basic" fields = ["targets", "no_commit", "glob", "out", "force"] [[commands.subcommand]] path = ["push"] label = "Upload to remote" description = "Upload tracked data to remote storage. Run-cache and per-branch options are partly covered." [[commands.subcommand.source]] id = "help" kind = "help" url = "https://dvc.org/doc/command-reference/push" revision = "dvc --help (installed)" evidence = """ usage: dvc push [-h] [-q | -v] [-j ] [-r ] [-a] [-T] [-A] [-d] targets Limit command scope to these tracked -j, --jobs Number of jobs to run simultaneously. The default -r, --remote Remote storage to push to -a, --all-branches Push cache for all branches. -T, --all-tags Push cache for all tags. -A, --all-commits Push cache for all commits. -d, --with-deps Push cache for all dependencies of the specified -R, --recursive Push cache for subdirectories of specified directory. """ [[commands.subcommand.field]] id = "targets" label = "Targets" description = "Limit to these tracked files, .dvc files or stage names. Leave empty for everything." type = "string" position = 0 multiple = true sources = ["help"] [[commands.subcommand.field]] id = "remote" label = "Remote name" type = "string" option = ["--remote", "-r"] sources = ["help"] [[commands.subcommand.field]] id = "jobs" label = "Parallel jobs" type = "integer" option = ["--jobs", "-j"] sources = ["help"] [[commands.subcommand.field]] id = "all_branches" label = "All branches" type = "boolean" option = ["--all-branches", "-a"] sources = ["help"] [[commands.subcommand.field]] id = "all_tags" label = "All tags" type = "boolean" option = ["--all-tags", "-T"] sources = ["help"] [[commands.subcommand.field]] id = "all_commits" label = "All commits" type = "boolean" option = ["--all-commits", "-A"] sources = ["help"] [[commands.subcommand.field]] id = "with_deps" label = "Include dependencies" type = "boolean" option = ["--with-deps", "-d"] sources = ["help"] [[commands.subcommand.field]] id = "recursive" label = "Recurse into directories" type = "boolean" option = ["--recursive", "-R"] sources = ["help"] [[commands.subcommand.task]] id = "push" label = "Push everything" fields = ["remote"] required = [] [[commands.subcommand.group]] id = "basic" label = "Basic" fields = ["targets", "remote", "jobs"] [[commands.subcommand.group]] id = "advanced" label = "Advanced" fields = ["all_branches", "all_tags", "all_commits", "with_deps", "recursive"] [[commands.subcommand]] path = ["pull"] label = "Download from remote" description = "Download tracked data from remote storage into the workspace." [[commands.subcommand.source]] id = "help" kind = "help" url = "https://dvc.org/doc/command-reference/pull" revision = "dvc --help (installed)" evidence = """ usage: dvc pull [-h] [-q | -v] [-j ] [-r ] [-a] [-T] [-A] [-f] targets Limit command scope to these tracked -j, --jobs Number of jobs to run simultaneously. The default -r, --remote Remote storage to pull from -a, --all-branches Fetch cache for all branches. -T, --all-tags Fetch cache for all tags. -A, --all-commits Fetch cache for all commits. -f, --force Do not prompt when removing working directory files. -d, --with-deps Fetch cache for all dependencies of the specified -R, --recursive Pull cache for subdirectories of the specified """ [[commands.subcommand.field]] id = "targets" label = "Targets" description = "Limit to these tracked files, .dvc files or stage names. Leave empty for everything." type = "string" position = 0 multiple = true sources = ["help"] [[commands.subcommand.field]] id = "remote" label = "Remote name" type = "string" option = ["--remote", "-r"] sources = ["help"] [[commands.subcommand.field]] id = "jobs" label = "Parallel jobs" type = "integer" option = ["--jobs", "-j"] sources = ["help"] [[commands.subcommand.field]] id = "all_branches" label = "All branches" type = "boolean" option = ["--all-branches", "-a"] sources = ["help"] [[commands.subcommand.field]] id = "all_tags" label = "All tags" type = "boolean" option = ["--all-tags", "-T"] sources = ["help"] [[commands.subcommand.field]] id = "all_commits" label = "All commits" type = "boolean" option = ["--all-commits", "-A"] sources = ["help"] [[commands.subcommand.field]] id = "with_deps" label = "Include dependencies" type = "boolean" option = ["--with-deps", "-d"] sources = ["help"] [[commands.subcommand.field]] id = "recursive" label = "Recurse into directories" type = "boolean" option = ["--recursive", "-R"] sources = ["help"] [[commands.subcommand.field]] id = "force" label = "Do not prompt before removing" type = "boolean" option = ["--force", "-f"] effect = "delete" sources = ["help"] [[commands.subcommand.task]] id = "pull" label = "Pull everything" fields = ["remote"] required = [] [[commands.subcommand.group]] id = "basic" label = "Basic" fields = ["targets", "remote", "jobs"] [[commands.subcommand.group]] id = "advanced" label = "Advanced" fields = ["all_branches", "all_tags", "all_commits", "with_deps", "recursive", "force"] [[commands.subcommand]] path = ["repro"] label = "Reproduce pipeline" description = "Run the stages in dvc.yaml that are out of date." [[commands.subcommand.source]] id = "help" kind = "help" url = "https://dvc.org/doc/command-reference/repro" revision = "dvc --help (installed)" evidence = """ usage: dvc repro [-h] [-q | -v] [-f] [-i] [-s] [-p] [-P] [-R] [--downstream] targets Stages to reproduce. dvc.yaml by default. -f, --force Reproduce even if dependencies were not changed. -i, --interactive Ask for confirmation before reproducing each stage. -s, --single-item Reproduce only single data item without recursive -p, --pipeline Reproduce the whole pipeline that the specified targets -P, --all-pipelines Reproduce all pipelines in the repo. --downstream Start from the specified stages when reproducing --pull Try automatically pulling missing data. --dry Only print the commands that would be executed without """ [[commands.subcommand.field]] id = "targets" label = "Stages" description = "Stage names or dvc.yaml paths. Leave empty for dvc.yaml." type = "string" position = 0 multiple = true sources = ["help"] [[commands.subcommand.field]] id = "force" label = "Force" description = "Reproduce even if dependencies were not changed." type = "boolean" option = ["--force", "-f"] sources = ["help"] [[commands.subcommand.field]] id = "interactive" label = "Confirm each stage" type = "boolean" option = ["--interactive", "-i"] sources = ["help"] [[commands.subcommand.field]] id = "single_item" label = "Single item only" type = "boolean" option = ["--single-item", "-s"] sources = ["help"] [[commands.subcommand.field]] id = "pipeline" label = "Whole pipeline" type = "boolean" option = ["--pipeline", "-p"] sources = ["help"] [[commands.subcommand.field]] id = "all_pipelines" label = "All pipelines" type = "boolean" option = ["--all-pipelines", "-P"] sources = ["help"] [[commands.subcommand.field]] id = "downstream" label = "Start from the given stages" type = "boolean" option = ["--downstream"] sources = ["help"] [[commands.subcommand.field]] id = "pull" label = "Pull missing data" type = "boolean" option = ["--pull"] sources = ["help"] [[commands.subcommand.field]] id = "dry" label = "Dry run" description = "Only print the commands that would be executed." type = "boolean" option = ["--dry"] sources = ["help"] [[commands.subcommand.task]] id = "repro" label = "Reproduce the pipeline" fields = ["targets"] required = [] [[commands.subcommand.task]] id = "dry" label = "Preview what would run" fields = ["targets", "dry"] required = ["dry"] set = { dry = [true] } [[commands.subcommand.group]] id = "basic" label = "Basic" fields = ["targets", "force", "dry", "pull"] [[commands.subcommand.group]] id = "advanced" label = "Advanced" fields = ["interactive", "single_item", "pipeline", "all_pipelines", "downstream"]