wflow_rename renames files and directories. If the file to be renamed is an R Markdown file, the corresponding HTML and other related files are also renamed. If the workflowr project uses Git, wflow_rename commits the changes.

wflow_rename(files, to, message = NULL, git = TRUE, dry_run = FALSE,
  project = ".")



character. Files to be renamed. Supports file globbing.


character. New names for the files. Must be the same length as files.


character (default: NULL). A commit message.


logical (default: TRUE). Commit the changes (only applicable if Git repository is present).


logical (default: FALSE). Preview the files to be renamed but do not actually rename them.


character (default: ".") By default the function assumes the current working directory is within the project. If this is not true, you'll need to provide the path to the project directory.


An object of class wflow_rename, which is a list with the following elements:

  • files: The relative path(s) to the renamed file(s).

  • to: The new relative path(s) to rename the file(s).

  • message: The message describing the commit (if applicable).

  • git: The input argument git.

  • dry_run: The input argument dry_run.

  • commit:The object returned by git2r::commit (only included if dry_run == FALSE).

  • files_git: The relative path(s) to the file(s) renamed from the Git repository.

See also


# rename a single file
wflow_rename("analysis/file.Rmd", "analysis/new.Rmd", "rename old analysis.")
# rename multiple files
wflow_rename(c("analysis/file.Rmd", "output/small-data.txt"),
             c("analysis/new.Rmd", "output/new-data.txt"),
             "rename old analysis and its associated data.")
# }