Given a dataset, such as ds000206, prepare:
export DATASET_NAME=ds000206
datalad create -c text2git -D "Test Dataset for NiPreps derived from OpenNeuro's ${DATASET_NAME}" ${DATASET_NAME} --initial-branch main
cd $DATASET_NAME
datalad create -d . -c text2git -D "Test Dataset for NiPreps derived from OpenNeuro's ${DATASET_NAME} [derivatives]" ./derivatives --initial-branch mainAt this point, create a .gitattributes file with the following content:
* annex.backend=MD5E
**/.git* annex.largefiles=nothing
*.annot annex.largefiles=nothing
*.bib annex.largefiles=nothing
*.bval annex.largefiles=nothing
*.bvec annex.largefiles=nothing
*.cmd annex.largefiles=nothing
*.csv annex.largefiles=nothing
*.dat annex.largefiles=nothing
*.done annex.largefiles=nothing
*.html annex.largefiles=nothing
*.json annex.largefiles=nothing
*.label annex.largefiles=nothing
*.local-copy",*.lta annex.largefiles=nothing
*.log annex.largefiles=nothing
*.log.bak annex.largefiles=nothing
*.md annex.largefiles=nothing
*.stats annex.largefiles=nothing
*.tex annex.largefiles=nothing
*.toml annex.largefiles=nothing
*.touch annex.largefiles=nothing
*.tsv annex.largefiles=nothing
*.txt annex.largefiles=nothing
*.yaml annex.largefiles=nothing
*.yml annex.largefiles=nothing
.bids-validator-config.json annex.largefiles=nothing
.bidsignore annex.largefiles=nothing
CHANGES annex.largefiles=nothing
LICENSE annex.largefiles=nothing
README* annex.largefiles=nothing
code/** annex.largefiles=nothing
dataset_description.json annex.largefiles=nothing
logs/** annex.largefiles=nothing
*.env annex.largefiles=anything
*.env.bak annex.largefiles=anything
*.gii annex.largefiles=anything
*.h5 annex.largefiles=anything
*.svg annex.largefiles=anything
This requires datalad 0.16 (still in development).
datalad create-sibling-gin nipreps-data/${DATASET_NAME} -s gin
datalad create-sibling-gin -d derivatives nipreps-data/${DATASET_NAME}-derivatives -s ginNote that because we use main and GOGS still assumes master will be the default branch in many places,
you will need to update these manually in the repository settings.
datalad create-sibling-osf --title "NiPreps testing - ${DATASET_NAME}" -s osf --public --category data -d ./${DATASET_NAME}
datalad create-sibling-osf --title "NiPreps testing - ${DATASET_NAME} [derivatives]" -s osf --public --category data -d ./derivativesIf you've set up OSF siblings, set:
OSF="--publish-depends osf-storage"Now, ensure you configure access to GitHub by setting:
export DATALAD_CREDENTIAL_GITHUB_TOKEN='<replace with your token>'In any case:
datalad create-sibling-github --credential github -d . -s github nipreps-data/${DATASET_NAME} ${OSF}
datalad create-sibling-github --credential github -d ./derivatives -s github nipreps-data/${DATASET_NAME}-derivatives ${OSF}
# datalad siblings configure -d ./derivatives -s github --publish-by-default +refs/heads/*:refs/remotes/github/*