Skip to content

mise dotfiles apply ​

  • Usage: mise dotfiles apply [FLAGS] [TARGET]…
  • Effect: destructive — may delete or irreversibly overwrite
  • Source code: src/cli/dotfiles/apply.rs

Link, copy, and render [dotfiles] entries into place

Applies the whole-file entries and edits that are not in their desired state. Whole-file entries symlink, copy, render templates, write inline content, set permissions, or remove targets declared mode = "absent". Edit entries manage a marker-delimited block, a single line, or merged keys in a file mise does not otherwise own.

Entries that deploy mise's own configuration are applied first and the configuration is read again, so a rule the new file adds applies in the same run.

apply works from the files on this machine. It never fetches or pulls: to bring in changes from other machines, run mise dot sync, mise dot pull, then mise dot apply.

The pre-dotfiles and post-dotfiles bootstrap hooks run before and after the apply (with --dry-run they are printed, not run), and the matching [history.reload] commands run for the targets it wrote.

With --prune, also removes files that dotfile groups deployed but no active entry deploys now: files of a group that is no longer selected or declared, and files a group stopped deploying because of a new exclude or a deleted source.

Arguments ​

  • [TARGET]… — Only apply these targets

Flags ​

  • -f --force — Overwrite existing files that conflict with whole-file dotfile entries
  • -n --dry-run — Print the actions that would run without writing anything
  • -y --yes — Skip the confirmation prompt
  • --prune — Also remove files that dotfile groups deployed but no active entry deploys now
  • --prompt-secrets — Prompt for [bootstrap.secrets] values that templates need and the environment does not set
  • -h --help — Print help

Examples ​

Deploy every entry that is out of date

mise dot apply

Print what would change

mise dot apply --dry-run

Also remove files left by dotfile groups

mise dot apply --prune

Overwrite conflicting files without prompting

mise dot apply --force --yes
MIT LicenseCopyright © 2026jdx.dev