Man pages sections > man1 > datalad-add


datalad-add(1) General Commands Manual datalad-add(1)


datalad-add [--version] [-h] [-l LEVEL] [-p {condor}] [-s URL/PATH] [-d PATH]
[--to-git] [--nosave] [-r] [--recursion-limit LEVELS]
[--if-dirty {fail,save-before,ignore}] [--git-opts STRING]
[--annex-opts STRING] [--annex-add-opts STRING] [-J NJOBS]
[PATH [PATH ...]]


Add files/directories to an existing dataset.
Typically, files and directories to be added to a dataset would be placed
into a directory of a dataset, and subsequently this command can be used to
register this new content with the dataset. With recursion enabled,
files will be added to their respective subdatasets as well.
Alternatively, a source location can be given to indicate where to obtain
data from. If no PATH argument is provided in this case, the content will
be obtained from the source location and a default local name, derived from
the source location will be generated. Alternatively, an explicit PATH
can be given to override the default.
If more than one PATH argument and a source location are provided, the
PATH arguments will be sequentially used to complete the source URL/path
(be means of concatenation), and an attempt is made to obtain data from
those locations.
By default all files are added to the dataset's annex, i.e. only their
content identity and availability information is tracked with Git.
This results in lightweight datasets. If desired, the --to-git flag
can be used to tell datalad to inject files directly into Git. While
this is not recommended for binary data or large files, it can be used
for source code and meta-data to be able to benefit from Git's track
and merge capabilities. Files checked directly into Git are always and
unconditionally available immediately after installation of a dataset.

Power-user info: This command uses git annex add, git annex addurl, or

git add to incorporate new dataset content.


PATH path/name of the component to be added. The component
must either exist on the filesystem already, or a
SOURCE has to be provided. Constraints: value must be
a string [Default: None]

--version show the program's version and license information
-h, --help, --help-np
show this help message. --help-np forcefully disables
the use of a pager for displaying the help message
-l LEVEL, --log-level LEVEL
set logging verbosity level. Choose among critical,
error, warning, info, debug. Also you can specify an
integer <10 to provide even more debugging information
-p {condor}, --pbs-runner {condor}
execute command by scheduling it via available PBS.
For settings, config file will be consulted
-s URL/PATH, --source URL/PATH
url or local path of the to be added component's
source. Constraints: value must be a string [Default:
-d PATH, --dataset PATH
specify the dataset to perform the add operation on.
If no dataset is given, an attempt is made to identify
the dataset based on the current working directory
and/or the PATH given. Constraints: Value must be a
Dataset or a valid identifier of a Dataset (e.g. a
path) [Default: None]
--to-git flag whether to add data directly to Git, instead of
tracking data identity only. Usually this is not
desired, as it inflates dataset sizes and impacts
flexibility of data transport. [Default: False]
--nosave by default all modifications to a dataset are
immediately saved. Given this option will disable this
behavior. [Default: True]
-r, --recursive
if set, recurse into potential subdataset. [Default:
--recursion-limit LEVELS
limit recursion into subdataset to the given number of
levels. Constraints: value must be convertible to type
'int' [Default: None]
--if-dirty {fail,save-before,ignore}
desired behavior if a dataset with unsaved changes is
discovered: 'fail' will trigger an error and further
processing is aborted; 'save-before' will save all
changes prior any further action; 'ignore' let's
datalad proceed as if the dataset would not have
unsaved changes. [Default: 'ignore']
--git-opts STRING
option string to be passed to git calls. Constraints:
value must be a string [Default: None]
--annex-opts STRING
option string to be passed to git annex calls.
Constraints: value must be a string [Default: None]
--annex-add-opts STRING
option string to be passed to git annex add calls.
Constraints: value must be a string [Default: None]
-J NJOBS, --jobs NJOBS
how many parallel jobs (where possible) to use.
Constraints: value must be convertible to type 'int'
[Default: None]


datalad is developed by The DataLad Team and Contributors <>.
2016-11-10 datalad-add 0.4.1