Computing

GitHub

GitHub is a company hosting git repositories online and providing several collaboration features. GitHub fosters a great user community and has built a nice graphical interface on top of git, adding great visualization capacities of your data and codes. GitHub can also be used for project management purposes relying on GitHub issues and project boards (here for more). One more feature of interest to scientists, GitHub is a great platform to publish your work using GitHub pages, complementing well notebooks such as Rmarkdown and Jupyter notebooks.

You can access these services through their main website. GitHub has also created an enterprise version of their system enabling companies and institutions to deploy their own GitHub instance to provide more control on how you organize your content and collaborate, as well as keeping all the content on a local server.

GitHub.com

Everybody can create an account on GitHub.com for free and use public repositories to foster collaborative code development. Note that by default all the repositories are public, so think wisely before adding any sensitive data to your repository. Note that we generally recommend to use git and GitHub to manage your codes and not your data.

Setting up your GitHub token using R: https://happygitwithr.com/https-pat.html (recommended) ; or without R using GitHub help pages

On a server (like Aurora, Mazu, …), you need to ask git to remember this token, you can do this by running the following line:

git config --global credential.helper 'cache --timeout=10000000'

NCEAS GitHub instance

https://github.nceas.ucsb.edu/

NCEAS is running its own GitHub instance. You can use this instance to collaborate with your working group participants and set up as many private repositories as you would like to.

To gain access to this instance, you need to first create an account with NCEAS web services following these instructions.

Which instance to use?

Our first recommendation will be to use GitHub.com. That way your collaborators will be encouraged to sign-up and learn about this general, highly popular code-versioning and collaboration tool– that they can also use for their own purposes, or any other collaborative ventures of this sort.

For projects concerned about privacy, NCEAS GitHub instance is available on demand. Note it will require all collaborators to create an account with us, as GitHub.com credentials won’t work. There is also the advantage, that NCEAS’ GitHub doesn’t have restrictions on total storage used.

GitHub Documentation

See this page to get started with git