Scroll to navigation

datalad save(1) datalad datalad save(1)


datalad save - save the current state of a dataset


datalad save [-h] [-m MESSAGE] [-d DATASET] [-u] [--version-tag ID] [-r] [--recursion-limit LEVELS] [-S] [-F MESSAGE_FILE] [PATH [PATH ...]]


Saving the state of a dataset records changes that have been made to it. This change record is annotated with a user-provided description. Optionally, an additional tag, such as a version, can be assigned to the saved state. Such tag enables straightforward retrieval of past versions at a later point in time.


Save any content underneath the current directory, without altering any potential subdataset (use --recursive for that)::

% datalad save .

Save any modification of known dataset content, but leave untracked files (e.g. temporary files) untouched::

% dataset save -d <path_to_dataset>

Tag the most recent saved state of a dataset::

% dataset save -d <path_to_dataset> --version-tag bestyet


path/name of the dataset component to save. If given, only changes made to those components are recorded in the new state. Constraints: value must be a string [Default: None]

-h, --help, --help-np
show this help message. --help-np forcefully disables the use of a pager for displaying the help message
-m MESSAGE, --message MESSAGE
a description of the state or the changes made to a dataset. Constraints: value must be a string [Default: None]
-d DATASET, --dataset DATASET
"specify the dataset to save. Constraints: Value must be a Dataset or a valid identifier of a Dataset (e.g. a path) [Default: None]
-u, --all-updated
if no explicit paths are given, save changes of all known components in a datasets. [Default: True]
--version-tag ID
an additional marker for that state. Constraints: value must be a string [Default: None]
-r, --recursive
if set, recurse into potential subdataset. [Default: False]
--recursion-limit LEVELS
limit recursion into subdataset to the given number of levels. Constraints: value must be convertible to type 'int' [Default: None]
-S, --super-datasets
if set, save a change in a dataset also in its superdataset. [Default: False]
take the commit message from this file. This flag is mutually exclusive with -m. Constraints: value must be a string [Default: None]


datalad is developed by The DataLad Team and Contributors <>.