DATALAD-CREATE-SIBLING-GOGS(1)

πŸ“¦
version 1.1.5 Β· 7 versions
, in debian trixie, ubuntu resolute, ubuntu stonking

πŸ’… datalad-create-sibling-gogs β€” like, the whole manual, bestie ✨

Okay so this is a page from the General Commands Manual for datalad create-sibling-gogs (yes, the title got all squished in the header as datalad cr...ibling-gogs(1) β€” it's giving truncated icon energy πŸ’€). Anyway. Sit down, grab a strawberry πŸ“, and let's get into it.


🌸 NAME 🌸

datalad create-sibling-gogs β€” creates a dataset sibling on a GOGS site. That's the whole vibe. πŸŽ€


✨ SYNOPSIS ✨

datalad create-sibling-gogs [-h] [--api URL] [--dataset DATASET] [-r]
       [-R LEVELS] [-s NAME]
       [--existing {skip|error|reconfigure|replace}] [--credential NAME]
       [--access-protocol {https|ssh|https-ssh}] [--publish-
       depends SIBLINGNAME] [--private] [--description DESCRIPTION]
       [--dry-run] [--version] [<org-name>/]<repo-(base)name>

Literally just look at all those flags. She's thorough. πŸ‘‘


πŸ¦‹ DESCRIPTION πŸ¦‹

So GOGS is a self-hosted, free and open source code hosting solution, and the whole point of it is low resource demands β€” like, you can run it on inexpensive devices. A Raspberry Pi? Slay. Directly on a NAS device? Also slay. It's very main character for a tiny box. πŸ’–

Important, bestie: to even use this command, a personal access token has to be generated on the platform. The path is: Account->Your Settings->Applications->Generate New Token. Write that down. Or don't, it's literally right there. 😭

You can also configure this command with datalad.create-sibling-ghlike.extra-remote-settings.NETLOC.KEY=VALUE, which adds any local KEY = VALUE configuration to the created sibling in the local .git/config file. Here NETLOC is the domain of the Gogs instance that you're applying the configuration for. The resulting behavior is equivalent to calling datalad's siblings('configure', ...)||siblings configure command with the respective KEY-VALUE pair after creating the sibling. And because this configuration is, like any other config, settable at user- or system level, users do NOT need to add this configuration to every single sibling created with the service at NETLOC themselves. Iconic efficiency. ✨

New in version 0.16 β€” she's not new new, but she's not ancient either. 🫢


πŸ‘‘ OPTIONS πŸ‘‘

[<org-name>/]<repo-(base)name>

The repository name, bestie! Optionally with an '<organization>/' prefix if the repository shall not reside under a user's namespace. And when you're operating recursively, a suffix gets appended to this name for each subdataset. Constraints: value must be a string.

-h, --help, --help-np

Shows this help message. And --help-np forcefully disables the use of a pager for displaying the help message. Forcefully. She said what she said. πŸ’…

--api URL

The URL of the GOGS instance, without an 'api/<version>' suffix. Like, don't add the suffix, okay? Constraints: value must be a string or value must be NONE.

--dataset DATASET, -d DATASET

The dataset to create the publication target for. If it's not given, an attempt is made to identify the dataset based on the current working directory β€” she'll figure it out herself, don't worry. 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. Going deep, going down the rabbit hole πŸ‡πŸ•³οΈ

-R LEVELS, --recursion-limit LEVELS

Limits recursion into subdatasets to the given number of levels. So you can go deep, just not too deep. Constraints: value must be convertible to type 'int' or value must be NONE.

-s NAME, --name NAME

The name of the sibling in the local dataset installation (that's the remote name, iykyk). Constraints: value must be a string or value must be NONE.

--existing {skip|error|reconfigure|replace}

The behavior when already existing or configured siblings are discovered. Your choices, queen:

  • 'skip' β€” skip the dataset
  • 'reconfigure' β€” update the configuration
  • 'error' β€” fail
  • 'replace' β€” ⚠️ DEPRECATED DANGER ZONE ⚠️
Okay so with 'replace', an existing repository will be irreversibly removed, re-initialized, and the sibling (re-)configured (thus it implies 'reconfigure'). REPLACE could lead to DATA LOSS! In interactive sessions a confirmation prompt is shown, and an exception is raised in non-interactive sessions. The 'replace' mode will be removed in a future release. Like... be so serious right now. Do not play with this. πŸ˜­πŸ’€

Constraints: value must be one of ('skip', 'error', 'reconfigure', 'replace') [Default: 'error']

--credential NAME

The name of the credential providing a personal access token to be used for authorization. The token can be supplied via configuration setting 'datalad.credential.<name>.token', or environment variable DATALAD_CREDENTIAL_<NAME>_TOKEN, or it will be queried from the active credential store using the provided name. If none is provided, the host-part of the API URL is used as a name (e.g. 'https://api.github.com' -> 'api.github.com'). Constraints: value must be a string or value must be NONE.

--access-protocol {https|ssh|https-ssh}

The access protocol/URL to configure for the sibling. With 'https-ssh', SSH will be used for write access, whereas HTTPS is used for read access. Both worlds, bestie. 🌈 Constraints: value must be one of ('https', 'ssh', 'https-ssh') [Default: 'https']

--publish-depends SIBLINGNAME

Adds a dependency such that the given existing sibling is always published prior to the new sibling. This equals setting a configuration item 'remote.SIBLINGNAME.datalad-publish-depends'. And you can give this option more than once to configure multiple dependencies β€” stack 'em, queen. πŸ‘‘ Constraints: value must be a string or value must be NONE.

--private

If set, create a private repository. 🀫 No peeking.

--description DESCRIPTION

A brief description, displayed on the project's page. Make it cute. Constraints: value must be a string or value must be NONE.

--dry-run

If set, no repository will be created β€” only tests for sibling name collisions will be performed, and the would-be repository names are reported for all relevant datasets. It's giving window shopping. πŸ›οΈβœ¨

--version

Shows the module and its version which provides the command.


πŸ’œ AUTHORS πŸ’œ

datalad is developed by The DataLad Team and Contributors <team@datalad.org>. Legends, honestly. 🫢


And that's the whole page, bestie! This was datalad create-sibling-gogs version 1.1.5, dated 2025-06-15, from the datalad create-sibling-gogs(1) manual. Go forth and create siblings responsibly πŸ’–πŸŽ€πŸ¦‹πŸŒΈβ­

πŸ“¦ where this page comes from