1datalad create-sibling-gin(1)General Commands Manuadlatalad create-sibling-gin(1)
2
3
4
6 datalad create-sibling-gin - create a dataset sibling on a GIN site
7 (with content hosting)
8
10 datalad create-sibling-gin [-h] [--dataset DATASET] [-r] [-R LEVELS]
11 [-s NAME] [--existing {skip|error|reconfigure|replace}]
12 [--api URL] [--credential NAME] [--access-protocol
13 {https|ssh|https-ssh}] [--publish-depends SIBLINGNAME]
14 [--private] [--description DESCRIPTION] [--dry-run] [--version]
15 [<org-name>/]<repo-(base)name>
16
17
18
20 GIN (G-Node infrastructure) is a free data management system. It is a
21 GitHub-like, web-based repository store and provides fine-grained ac‐
22 cess control to shared data. GIN is built on Git and git-annex, and can
23 natively host DataLad datasets, including their data content!
24
25 This command uses the main GIN instance at https://gin.g-node.org as
26 the default target, but other deployments can be used via the 'api' pa‐
27 rameter.
28
29 An SSH key, properly registered at the GIN instance, is required for
30 data upload via DataLad. Data download from public projects is also
31 possible via anonymous HTTP.
32
33 In order to be able to use this command, a personal access token has to
34 be generated on the platform (Account->Your Settings->Applica‐
35 tions->Generate New Token).
36
37 This command can be configured with "datalad.create-sibling-ghlike.ex‐
38 tra-remote-settings.NETLOC.KEY=VALUE" in order to add any local KEY =
39 VALUE configuration to the created sibling in the local `.git/config`
40 file. NETLOC is the domain of the Gin instance to apply the configura‐
41 tion for. This leads to a behavior that is equivalent to calling data‐
42 lad's ``siblings('configure', ...)``||``siblings configure`` command
43 with the respective KEY-VALUE pair after creating the sibling. The
44 configuration, like any other, could be set at user- or system level,
45 so users do not need to add this configuration to every sibling created
46 with the service at NETLOC themselves.
47
48 New in version 0.16
49
50 Examples
51 Create a repo 'myrepo' on GIN and register it as sibling 'mygin'::
52
53 % datalad create-sibling-gin myrepo -s mygin
54
55 Create private repos with name(-prefix) 'myrepo' on GIN for a dataset
56 and all its present subdatasets::
57
58 % datalad create-sibling-gin myrepo -r --private
59
60 Create a sibling repo on GIN, and register it as a common data source
61 in the dataset that is available regardless of whether the dataset was
62 directly cloned from GIN::
63
64 % datalad create-sibling-gin myrepo -s gin
65 # first push creates git-annex branch remotely and obtains annex UUID
66 % datalad push --to gin
67 % datalad siblings configure -s gin --as-common-datasrc gin-storage
68 # announce availability (redo for other siblings)
69 % datalad push --to gin
70
72 [<org-name>/]<repo-(base)name>
73 repository name, optionally including an '<organization>/' pre‐
74 fix if the repository shall not reside under a user's namespace.
75 When operating recursively, a suffix will be appended to this
76 name for each subdataset. Constraints: value must be a string
77
78
79 -h, --help, --help-np
80 show this help message. --help-np forcefully disables the use of
81 a pager for displaying the help message
82
83 --dataset DATASET, -d DATASET
84 dataset to create the publication target for. If not given, an
85 attempt is made to identify the dataset based on the current
86 working directory. Constraints: Value must be a Dataset or a
87 valid identifier of a Dataset (e.g. a path) or value must be
88 NONE
89
90 -r, --recursive
91 if set, recurse into potential subdatasets.
92
93 -R LEVELS, --recursion-limit LEVELS
94 limit recursion into subdatasets to the given number of levels.
95 Constraints: value must be convertible to type 'int' or value
96 must be NONE
97
98 -s NAME, --name NAME
99 name of the sibling in the local dataset installation (remote
100 name). Constraints: value must be a string or value must be NONE
101 [Default: 'gin']
102
103 --existing {skip|error|reconfigure|replace}
104 behavior when already existing or configured siblings are dis‐
105 covered: skip the dataset ('skip'), update the configuration
106 ('reconfigure'), or fail ('error'). DEPRECATED DANGER ZONE: With
107 'replace', an existing repository will be irreversibly removed,
108 re-initialized, and the sibling (re-)configured (thus implies
109 'reconfigure'). REPLACE could lead to data loss! In interactive
110 sessions a confirmation prompt is shown, an exception is raised
111 in non-interactive sessions. The 'replace' mode will be removed
112 in a future release. Constraints: value must be one of ('skip',
113 'error', 'reconfigure', 'replace') [Default: 'error']
114
115 --api URL
116 URL of the GIN instance without an 'api/<version>' suffix. Con‐
117 straints: value must be a string or value must be NONE [Default:
118 'https://gin.g-node.org']
119
120 --credential NAME
121 name of the credential providing a personal access token to be
122 used for authorization. The token can be supplied via configura‐
123 tion setting 'datalad.credential.<name>.token', or environment
124 variable DATALAD_CREDENTIAL_<NAME>_TOKEN, or will be queried
125 from the active credential store using the provided name. If
126 none is provided, the host-part of the API URL is used as a name
127 (e.g. 'https://api.github.com' -> 'api.github.com'). Con‐
128 straints: value must be a string or value must be NONE
129
130 --access-protocol {https|ssh|https-ssh}
131 access protocol/URL to configure for the sibling. With 'https-
132 ssh' SSH will be used for write access, whereas HTTPS is used
133 for read access. Constraints: value must be one of ('https',
134 'ssh', 'https-ssh') [Default: 'https-ssh']
135
136 --publish-depends SIBLINGNAME
137 add a dependency such that the given existing sibling is always
138 published prior to the new sibling. This equals setting a con‐
139 figuration item 'remote.SIBLINGNAME.datalad-publish-depends'.
140 This option can be given more than once to configure multiple
141 dependencies. Constraints: value must be a string or value must
142 be NONE
143
144 --private
145 if set, create a private repository.
146
147 --description DESCRIPTION
148 Brief description, displayed on the project's page. Constraints:
149 value must be a string or value must be NONE
150
151 --dry-run
152 if set, no repository will be created, only tests for sibling
153 name collisions will be performed, and would-be repository names
154 are reported for all relevant datasets.
155
156 --version
157 show the module and its version which provides the command
158
160 datalad is developed by The DataLad Team and Contributors <team@datal‐
161 ad.org>.
162
163
164
165datalad create-sibling-gin 0.19.3 2023-08-11 datalad create-sibling-gin(1)