DATALAD-CONFIGURATION(1)
π datalad configuration(1) β the glow-up
okay so bestie, this is a page from the General Commands Manual, and honestly? it's a whole vibe. welcome to datalad configuration, the command that gets and sets your dataset, dataset-clone-local, or global configuration. think of it as git-config's cooler cousin who also goes to the gym ποΈ
β¨ SYNOPSIS β¨
datalad configuration [-h] [--scope {global|local|branch}] [-d DATASET]
[-r] [-R LEVELS] [--version] [{dump|get|set|unset}] [name[=value]
...]
like, look at that. gorgeous. no notes. π
πΈ DESCRIPTION πΈ
So this command works similar to git-config, right? but bestie, some features are not supported (e.g., modifying system configuration π), while other features are straight-up not available in git-config at all (e.g., multi-configuration queries β yes that's her main character energy π).
Query and modification of three distinct configuration scopes is supported:
'branch': the persistent configuration in.datalad/configof a dataset branch'local': a dataset clone's Git repository configuration in.git/config'global': non-dataset-specific configuration (usually in$USER/.gitconfig)
β οΈ Heads up: modifications of the persistent'branch'configuration will not be saved by this command β you have to commit them with a subsequentSAVEcall. no cap. don't forget or you'll be sad π
Rules of precedence regarding different configuration scopes are the same as in Git, with two exceptions:
- environment variables can be used to override any datalad configuration, and have precedence over any other configuration scope (see below). π
- the
'branch'scope is considered in addition to the standard git configuration scopes. Its content has lower precedence than Git configuration scopes, but it is committed to a branch, hence can be used to ship (default and branch-specific) configuration with a dataset. iconic behavior fr fr.
π¦ the environment variable situation (iykyk)
Besides storing configuration settings statically via this command or `git config`, DataLad also reads any DATALAD_* environment on process startup or import, and maps it to a configuration item. Their values take precedence over any other specification. In variable names `_` encodes a `.` in the configuration name, and `__` encodes a `-`, such that `DATALAD_SOME__VAR` is mapped to `datalad.some-var`. π§
Additionally, a DATALAD_CONFIG_OVERRIDES_JSON environment variable is queried, which may contain configuration key-value mappings as a JSON-formatted string of a JSON-object:
DATALAD_CONFIG_OVERRIDES_JSON='{"datalad.credential.example_com.user": "jane", ...}'
This is useful when characters are part of the configuration key that cannot be encoded into an environment variable name. π‘ If both individual configuration variables and JSON-overrides are used, the former take precedent over the latter, overriding the respective individual settings from configurations declared in the JSON-overrides. so, individual wins. the way that works. β
This command supports recursive operation for querying and modifying configuration across a hierarchy of datasets. π
π Examples
Dump the effective configuration, including an annotation for common items:
% datalad configuration
Query two configuration items:
% datalad configuration get user.name user.email
Recursively set configuration in all (sub)dataset repositories:
% datalad configuration -r set my.config=value
Modify the persistent branch configuration (changes are not committed):
% datalad configuration --scope branch set my.config=value
π₯ OPTIONS π₯
{dump|get|set|unset}β which action to perform. Constraints: value must be one of ('dump','get','set','unset') [Default:'dump']name[=value]β configuration name (for actions'get'and'unset'), or name/value pair (for action'set'). π-h,--help,--help-npβ show this help message.--help-npforcefully disables the use of a pager for displaying the help message. (np = no pager, she's direct like that π)--scope {global|local|branch}β scope for getting or setting configuration. If no scope is declared for a query, all configuration sources (including overrides via environment variables) are considered according to the normal rules of precedence. For action'get'only'branch'and'local'(which include'global'here) are supported. For action'dump', a scope selection is ignored and all available scopes are considered. Constraints: value must be one of ('global','local','branch')-d DATASET,--dataset DATASETβ specify the dataset to query or to configure. Constraints: Value must be a Dataset or a valid identifier of a Dataset (e.g. a path) or value must be NONE-r,--recursiveβ if set, recurse into potential subdatasets. π«Ά-R LEVELS,--recursion-limit LEVELSβ limit recursion into subdatasets to the given number of levels. Constraints: value must be convertible to type'int'or value must be NONE--versionβ show the module and its version which provides the command β
π AUTHORS π
datalad is developed by The DataLad Team and Contributors <team@datalad.org>. π
aaaand that's the whole page bestie, you ate that π this was datalad configuration version 1.1.5, dated 2025-06-15 β go forth and configure responsibly, mwah π
β¨π¦
π¦ where this page comes from
- debian trixie: datalad 1.1.5-2.1 Β· MIT
- ubuntu resolute: datalad 1.1.5-2.1 Β· MIT
- ubuntu stonking: datalad 1.1.5-2.1 Β· MIT
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms