1datalad status(1)           General Commands Manual          datalad status(1)
2
3
4

NAME

6       datalad status - report on the state of dataset content.
7

SYNOPSIS

9       datalad  status  [-h] [-d DATASET] [--annex [{basic|availability|all}]]
10              [--untracked     {no|normal|all}]     [-r]      [-R      LEVELS]
11              [-e {no|commit|full}] [-t {raw|eval}] [--version] [PATH ...]
12
13
14

DESCRIPTION

16       This  is  an analog to `git status` that is simultaneously crippled and
17       more powerful. It is crippled, because it only supports a  fraction  of
18       the  functionality  of its counter part and only distinguishes a subset
19       of the states that Git knows about. But it is also more powerful as  it
20       can  handle  status reports for a whole hierarchy of datasets, with the
21       ability to report on a subset  of  the  content  (selection  of  paths)
22       across any number of datasets in the hierarchy.
23
24   Path conventions
25       All  reports  are  guaranteed to use absolute paths that are underneath
26       the given or detected reference dataset, regardless  of  whether  query
27       paths  are  given  as  absolute  or relative paths (with respect to the
28       working directory, or to the reference dataset, when such a dataset  is
29       given explicitly).  Moreover, so-called "explicit relative paths" (i.e.
30       paths that start with respect to the current working directory  regard‐
31       less of whether a reference dataset with specified.
32
33       When  it  is necessary to address a subdataset record in a superdataset
34       without causing a status query for the state  _within_  the  subdataset
35       itself,  this  can  be  achieved  by  explicitly  providing a reference
36       dataset and the path to the root of the subdataset like so::
37
38       datalad status --dataset . subdspath
39
40       In contrast, when the state of the subdataset within  the  superdataset
41       is  not  relevant, a status query for the content of the subdataset can
42       be obtained by adding a trailing  path  separator  to  the  query  path
43       (rsync-like syntax)::
44
45       datalad status --dataset . subdspath/
46
47       When both aspects are relevant (the state of the subdataset content and
48       the state of the subdataset within the superdataset), both queries  can
49       be combined::
50
51       datalad status --dataset . subdspath subdspath/
52
53       When  performing  a recursive status query, both status aspects of sub‐
54       dataset are always included in the report.
55
56   Content types
57       The following content types are distinguished:
58
59       - 'dataset' -- any top-level dataset, or any subdataset that is proper‐
60       ly  registered in superdataset - 'directory' -- any directory that does
61       not qualify for type 'dataset' - 'file' -- any  file,  or  any  symlink
62       that  is  placeholder to an annexed file when annex-status reporting is
63       enabled - 'symlink' -- any symlink that is not used  as  a  placeholder
64       for an annexed
65
66       file
67
68   Content states
69       The following content states are distinguished:
70
71       - 'clean' - 'added' - 'modified' - 'deleted' - 'untracked'
72
73   Examples
74       Report on the state of a dataset::
75
76        % datalad status
77
78       Report on the state of a dataset and all subdatasets::
79
80        % datalad status -r
81
82       Address  a subdataset record in a superdataset without causing a status
83       query for the state _within_ the subdataset itself::
84
85        % datalad status -d . mysubdataset
86
87       Get a status query for the state within the subdataset without  causing
88       a  status  query for the superdataset (using trailing path separator in
89       the query path):::
90
91        % datalad status -d . mysubdataset/
92
93       Report on the state of a subdataset in a superdataset and on the  state
94       within the subdataset::
95
96        % datalad status -d . mysubdataset mysubdataset/
97
98       Report the file size of annexed content in a dataset::
99
100        % datalad status --annex
101
102

OPTIONS

104       PATH   path  to  be  evaluated.  Constraints: value must be a string or
105              value must be NONE
106
107
108       -h, --help, --help-np
109              show this help message. --help-np forcefully disables the use of
110              a pager for displaying the help message
111
112       -d DATASET, --dataset DATASET
113              specify the dataset to query. If no dataset is given, an attempt
114              is made to identify the dataset based on the current working di‐
115              rectory. Constraints: Value must be a Dataset or a valid identi‐
116              fier of a Dataset (e.g. a path) or value must be NONE
117
118       --annex [{basic|availability|all}]
119              Switch whether to include information on the  annex  content  of
120              individual  files  in  the  status report, such as recorded file
121              size. By default no  annex  information  is  reported  (faster).
122              Three  report  modes  are available: basic information like file
123              size and key name ('basic'); additionally test whether file con‐
124              tent is present in the local annex ('availability'; requires one
125              or two additional file system stat calls, but does not call git-
126              annex), this will add the result properties 'has_content' (bool‐
127              ean flag) and 'objloc' (absolute path to an existing  annex  ob‐
128              ject file); or 'all' which will report all available information
129              (presently identical to 'availability'). The 'basic'  mode  will
130              be  assumed when this option is given, but no mode is specified.
131              Constraints: value must  be  one  of  ('basic',  'availability',
132              'all')
133
134       --untracked {no|normal|all}
135              If  and how untracked content is reported when comparing a revi‐
136              sion to the state of the working tree. 'no': no  untracked  con‐
137              tent is reported; 'normal': untracked files and entire untracked
138              directories are reported as such; 'all': report individual files
139              even  in fully untracked directories. Constraints: value must be
140              one of ('no', 'normal', 'all') [Default: 'normal']
141
142       -r, --recursive
143              if set, recurse into potential subdatasets.
144
145       -R LEVELS, --recursion-limit LEVELS
146              limit recursion into subdatasets to the given number of  levels.
147              Constraints:  value  must  be convertible to type 'int' or value
148              must be NONE
149
150       -e {no|commit|full}, --eval-subdataset-state {no|commit|full}
151              Evaluation of subdataset state (clean vs. modified) can  be  ex‐
152              pensive  for  deep  dataset hierarchies as subdataset have to be
153              tested recursively for uncommitted modifications.  Setting  this
154              option  to  'no' or 'commit' can substantially boost performance
155              by limiting what is being tested. With 'no' no state is evaluat‐
156              ed  and  subdataset  result  records  typically do not contain a
157              'state' property. With 'commit' only a discrepancy of  the  HEAD
158              commit shasum of a subdataset and the shasum recorded in the su‐
159              perdataset's record is evaluated, and the 'state' result proper‐
160              ty only reflects this aspect. With 'full' any other modification
161              is considered too (see the 'untracked' option for  further  tai‐
162              loring  modification testing). Constraints: value must be one of
163              ('no', 'commit', 'full') [Default: 'full']
164
165       -t {raw|eval}, --report-filetype {raw|eval}
166              THIS OPTION IS IGNORED. It will be removed in a future  release.
167              Dataset  component  types  are  always  reported as-is (previous
168              'raw' mode), unless annex-reporting is enabled with the  --annex
169              option, in which case symlinks that represent annexed files will
170              be reported as type='file'. Constraints: value must  be  one  of
171              ('raw', 'eval')
172
173       --version
174              show the module and its version which provides the command
175

AUTHORS

177        datalad is developed by The DataLad Team and Contributors <team@datal‐
178       ad.org>.
179
180
181
182datalad status 0.19.3             2023-08-11                 datalad status(1)
Impressum