datalad(1)
π datalad β the comprehensive data management solution, bestie
okay so picture this: you've got data, you've got code, you've got way too many repos, and you're lowkey losing it. datalad is literally the answer. this page is the full tour. let's go π«Ά
β¨ SYNOPSIS β¨
datalad [-c (:name|name=value)] [-C PATH] [--cmd] [-l LEVEL] [--on-failure {ignore,continue,stop}] [--report-status {success,failure,ok,notneeded,impossible,error}] [--report-type {dataset,file}] [-f {generic,json,json_pp,tailored,disabled,'<template>'}] [--dbg] [--idbg] [--version] COMMAND ...
πΈ DESCRIPTION πΈ
so DataLad is a unified data distribution system, and it's built on top of Git and Git-annex β yes, both, she's ambitious π
the DataLad command line tools let you manipulate datasets β like obtain, create, update, publish, etc. β and honestly it's a whole comprehensive toolbox for managing your data and your code together, hand in hand, no drama.
compared to plain Git/annex, the main character move is this: it extends their functionality so you can transparently and simultaneously work with multiple inter-related repositories. it's giving organized. it's giving β¨glow upβ¨.
π OPTIONS π
first up, the β¨subcommand menuβ¨ β these are all the COMMANDs you can pick from:
create-sibling-githubcreate-sibling-gitlabcreate-sibling-gogscreate-sibling-gincreate-sibling-giteacreate-sibling-riacreate-siblingsiblingsupdatesubdatasetsdropremoveaddurlscopy-filedownload-urlforeach-datasetinstallrerunrun-procedurecreatesavestatusclonegetpushrundiffconfigurationwtfcleanadd-archive-contentadd-readmeexport-archiveexport-archive-oraexport-to-figshareno-annexcheck-datesunlockuninstallcreate-test-datasetsshrunshell-completion
and now the actual global flags, bestie:
-c (:name|name=value)β specify configuration setting overrides π these bad girls override any configuration read from a file. and you can also unset a configuration temporarily by prefixing its name with a colon (':'), like':user.name'. oh and heads up: overrides you put here may themselves get overridden by configuration settings declared as environment variables. it's overrides all the way down π-C PATHβ run as ifdataladwas started in <path> instead of the current working directory. when you give multiple-Coptions, each subsequent non-absolute-C <path>is interpreted relative to the preceding-C <path>. this option affects how path names get interpreted, in that they're made relative to the working directory caused by the-Coption π¦--cmdβ a syntactical helper, ngl. use it to end the list of global command line options before the subcommand label. options that take an arbitrary number of arguments may require being followed by a single--cmdin order to enable identification of the subcommand π-l LEVEL,--log-level LEVELβ set the logging verbosity level, bestie. choose amongcritical,error,warning,info,debug. and you can also specify an integer<10to provide even more debugging information π₯--on-failure {ignore, continue, stop}β what happens when an operation fails:'ignore'β continue with the remaining operations; the error gets logged but does not lead to a non-zero exit code of the command'continue'β works like'ignore', but an error causes a non-zero exit code'stop'β halts on the first failure and yields a non-zero exit code
a failure is any result with status 'impossible' or 'error'. [Default: 'continue', but individual commands may define an alternative default] β so like, don't come for me if a subcommand switches it up π
--report-status {success, failure, ok, notneeded, impossible, error}β constrain the command result report to only records matching the given status.'success'is a synonym for'ok'OR'notneeded', and'failure'stands for'impossible'OR'error'π (iykyk)--report-type {dataset, file}β constrain the command result report to records matching the given type. you can give this more than once to match multiple types π-f {generic, json, json_pp, tailored, disabled,'<template>'},--output-format {generic, json, json_pp, tailored, disabled,'<template>'}β select the rendering mode for command results. the lineup:'tailored'β enables a command-specific rendering style that's typically tailored to human consumption, if there is one for that specific command, or otherwise falls back on the'generic'result renderer'generic'β renders each result in one line with key info like action, status, path, and an optional message'json'β a complete JSON line serialization of the full result record'json_pp'β like'json', but pretty-printed, spanning multiple lines'disabled'β turns off result rendering entirely'<template>'β reports any value(s) of any result properties in any format indicated by the template (e.g.'{path}'β compare with JSON output for all key-value choices)
the template syntax follows the Python "format() language". it's possible to report individual dictionary values, e.g. '{metadata[name]}'. and if a 2nd-level key contains a colon, e.g. 'music:Genre', the ':' must be substituted by '#' in the template, like so: '{metadata[music#Genre]}'. [Default: 'tailored'] β¨
--dbgβ enter the Python debugger for an uncaught exception π--idbgβ enter the IPython debugger for an uncaught exception πβ¨--versionβ show the module and its version which provides the command π
π AUTHORS π
datalad is developed by The DataLad Team and Contributors <team@datalad.org> β absolute icons, fr fr π«Ά
okay that's the whole page, you made it, I'm so proud of you π this is datalad 1.1.5, dated 2025-06-15 β go forth and manage some data, bestie, you're gonna slay π
β¨
π¦ 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