GitHub Enterprise at QMUL¶
GitHub is a web-based Git repository hosting service, which offers all of the distributed revision control and source code management (SCM) functionality of Git as well as adding its own features. Unlike Git, which is strictly a command-line tool, GitHub provides an additional web-based graphical interface and desktop as well as mobile integration. It also provides access control and several collaboration features such as code reviews and integration with test suites.
If you regularly collaborate, or modify source code, configuration files or any other text files, we recommend GitHub as a powerful tool to manage your workflow.
All Queen Mary University of London currently enrolled students, student-facing faculty, and anyone performing academic non-profit research (including external collaborators) can use it free of charge.
Differences between GitHub.com and GitHub Enterprise¶
GitHub Enterprise offers the same functionality as the public GitHub.com offering but all data is hosted within QMUL, authenticating against QMUL servers. This allows for easy collaboration with other researchers and students while retaining full control over management and security of your data.
Which GitHub Enterprise instance should I use?¶
No cross-instance support
Users, repositories and organisations stored on one GitHub Enterprise instance will not be accessible on another instance. Please ensure you select the most appropriate instance to use, or contact us for assistance.
QMUL students and staff¶
If you are a QMUL student or member of staff, visit the https://github.qmul.ac.uk GitHub Enterprise server and authenticate with your ITS issued username and password, via the QMUL Single Sign-On (MFA) portal if prompted.
If at least one external collaborator requires access to your repositories, please see the researchers and external collaborators section below.
Researchers and external collaborators¶
If you are a QMUL researcher or external collaborator that have been issued ITS Research credentials by us, you may continue to use the research version of GitHub Enterprise (https://github.research.its.qmul.ac.uk).
If you do not have an existing account with us, you may request one here. Students and staff supporting teaching should use the https://github.qmul.ac.uk server instead of requesting an ITS Research account.
Apocrita HPC users
All QMUL users automatically receive a GitHub Enterprise account on the https://github.research.its.qmul.ac.uk server with an HPC account. If you are an active HPC user, feel free to use either version of GitHub Enterprise outlined above, depending on your research needs. Recent versions of Git are available as a module on Apocrita.
Once you have logged in, we strongly recommend that you enable two-factor authentication by following these instructions.
Storage of data¶
Git has been designed with versioning of text-based files in mind. Although it can store binary files (zip files, executables, Word documents, PDFs, etc) it is generally not advisable to use it purely for that purpose.
You should not however use it to store passwords, sensitive data (including patient identifiable data) and large binary files, as per our usage policy.
Managing your repositories¶
There are two ways to allow others to see your personal repository:
- To allow all other members of the same QMUL GitHub Enterprise server to see a personal repository, set the visibility to public, by following these instructions.
Repositories which are set as public inside GitHub Enterprise are only public to all users of the same server, not across QMUL GitHub Enterprise servers, or to the whole world. If you do want to make it truly public (world-accessible), then you have to migrate to github.com. You could host it as a part of the QMUL organisation, or under your own personal account. Please contact us if you require any migration assistance.
- Grant a specific collaborator access to your repository, by following these instructions.
Further information on access permissions is available here.
Organisations simplify the management of group-owned repositories on a single GitHub Enterprise server, and provide enhanced permissions control over personal repositories.
A typical use-case would be for a PI of a research lab to manage, store and collaborate on code stored in several repositories, with access control managed by designated members of the organisation. Researchers are able to store the code in the organisation repository, rather than a private one. We have disabled the ability to create organisations by normal users. If you do think you need an organisation for your project please contact us.
Initially, try the GitHub support pages for Git-specific documentation. If you still need help, please contact us directly, or alternatively, contact the ITS helpdesk who will forward your request to us.
We kindly ask you not to contact GitHub for support directly. We will first look at your issue and when required submit relevant support request on your behalf (this is the requirement of the Terms and Conditions set by GitHub).