Git Repository Hosts
If your work involves writing code, chances are that you'll want to push your
git
repositories somewhere. You can, of course, use your own machine(s) to store your repositories (possibly with your own
gogs.io or
ShareLaTeX instance). However, sometimes you may want to work on your code collaboratively, publish the results publicly, and/or not have to worry about server maintenance. CrySP has access to several services that will host your research-related repositories:
Service |
Notes |
Best uses |
Contact person |
cryspuwaterloo GitHub organization |
- This is the official CrySP organization on GitHub
- Personal GitHub accounts are authorized to become members of the organization; email the contact person to request access
- Authorized users can create public or private repositories attached to the organization
- Repositories optionally support public read-only access using HTTPS
- Anyone in the world can fork and submit pull requests to public repositories
- Supports all GitHub features (by definition)
|
- Public projects encouraging public contributions
- Code from papers where code quality is a contribution ("refined gradware")
|
Urs |
University of Waterloo GitLab instance |
- This is the university's official answer to git hosting
- It relies on your WatIAM credentials, so you probably already have an account
- Users can create 25 individual repositories, or groups of projects
- Repositories can be private to yourself, specified individuals, all users with an account, or public
- Users must have a WatIAM account to do anything other than pull or view a repository
- It's a GitLab instance, so can easily import/export project data (wikis, issues, etc.) to/from other git hosts, especially other GitLab instances
- The university also has a GitHub organization, but it's primarliy (though not exclusively) for projects about the university
|
- Private collaborations
- Course projects with other UW students
- Projects that could eventually be migrated to another host
- Individual private projects
- Course projects
- Personal scripts
- Literature reviews
|
IST |
CrySP gogs.io server |
- This is a CrySP-operated service that replicates the design and features of GitHub
- User accounts are created by the administrator; email the contact person to request an account
- CrySP members with an account can create repositories and manage access control
- External researchers can request accounts, but these accounts can only contribute to existing repositories
- Repositories optionally support public read-only access using HTTPS (like GitHub)
- Supports most GitHub features (e.g., browser-based viewing, pull requests, issue trackers, wikis, hooks, and collaborator management)
|
- Private collaborations
- Theses
- Papers with or without external authors
- Individual private projects
- Course projects
- Personal scripts
- Literature reviews
- Public research projects without public contributions
- Proof-of-concept code from papers ("gradware")
|
Nik |
git-crysp.uwaterloo.ca (SSH or git:// ) |
- This is an SSH-based
git host running Gitolite - Repositories are created by the administrator; email the contact person to request a repository
- Access control lists are maintained by the administrator
- Repositories optionally support public read-only access using the
git protocol - The list of repositories is not public
- Email your SSH public key to the contact person to request access to a specific repository
|
- Private collaborations
- Theses
- Papers with or without external authors
|
IanG |
If you publish research-related software publicly, remember to add it to the
CrySP software page. If you do not have write access to the CrySP website, send the name of your project, a link to your repository, and a few descriptive sentences about your project to someone who does have access (such as Parjanya, the Spider-Man).