datalad create-sibling-github - create dataset sibling on
Github.
datalad create-sibling-github [-h]
[--dataset DATASET] [-r] [--recursion-limit LEVELS]
[-s NAME] [--existing MODE] [--github-login NAME]
[--github-passwd PASSWORD] [--github-organization NAME]
[--access-protocol ACCESS_PROTOCOL]
[--publish-depends SIBLINGNAME] [--dryrun] REPONAME
A repository can be created under a user's Github account, or any
organization a user is a member of (given appropriate permissions).
Recursive sibling creation for subdatasets is supported. A dataset
hierarchy is represented as a flat list of Github repositories.
Github cannot host dataset content. However, in combination with
other data sources (and siblings), publishing a dataset to Github can
facilitate distribution and exchange, while still allowing any dataset
consumer to obtain actual data content from alternative sources.
For Github authentication user credentials can be given as
arguments. Alternatively, they are obtained interactively or queried from
the systems credential store. Lastly, an *oauth* token stored in the Git
configuration under variable *hub.oauthtoken* will be used automatically.
Such a token can be obtained, for example, using the commandline Github
interface (https://github.com/sociomantic/git-hub) by running: git hub
setup.
- REPONAME
- Github repository name. When operating recursively, a suffix will be
appended to this name for each subdataset. Constraints: value must be a
string
- -h, --help,
--help-np
- show this help message. --help-np forcefully disables the use of a pager
for displaying the help message
- --dataset
DATASET, -d DATASET
- specify the dataset to create the publication target for. If no dataset is
given, an attempt is made to identify the dataset based on the current
working directory. Constraints: Value must be a Dataset or a valid
identifier of a Dataset (e.g. a path) [Default: None]
- -r,
--recursive
- if set, recurse into potential subdataset. [Default: False]
- --recursion-limit
LEVELS
- limit recursion into subdataset to the given number of levels.
Constraints: value must be convertible to type 'int' [Default: None]
- -s NAME, --name
NAME
- name to represent the Github repository in the local dataset installation.
Constraints: value must be a string [Default: 'github']
- --existing
MODE
- desired behavior when already existing or configured siblings are
discovered. 'skip': ignore; 'error': fail immediately; 'reconfigure': use
the existing repository and reconfigure the local dataset to use it as a
sibling. Constraints: value must be one of ('skip', 'error',
'reconfigure') [Default: 'error']
- --github-login
NAME
- Github user name or access token. Constraints: value must be a string
[Default: None]
- --github-passwd
PASSWORD
- Github user password. Constraints: value must be a string [Default:
None]
- --github-organization
NAME
- If provided, the repository will be created under this Github
organization. The respective Github user needs appropriate permissions.
Constraints: value must be a string [Default: None]
- --access-protocol
ACCESS_PROTOCOL
- Which access protocol/URL to configure for the sibling. Constraints: value
must be one of ('https', 'ssh') [Default: 'https']
- --publish-depends
SIBLINGNAME
- add 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'. This option can be given
more than once to configure multiple dependencies. Constraints: value must
be a string [Default: None]
- --dryrun
- If this flag is set, no communication with Github is performed, and no
repositories will be created. Instead would-be repository names are
reported for all relevant datasets. [Default: False]
datalad is developed by The DataLad Team and Contributors
<team@datalad.org>.