GitHub is a developer platform used by over 100+ million developers and 4+ million organisations to build, scale, and deliver secure software.

It uses the open-source tool Git to provide distributed version control, allowing multiple people to collaborate on code at the same time. It offers both public and private repositories for users to store their code and access GitHub features. Anyone can create an account on GitHub.com free of charge and create repositories under their GitHub account. 

Imperial has an enterprise license for GitHub, meaning you can link your Imperial account to access resources in the Imperial College London organisation on GitHub. This is a private space where our staff and students can collaborate on projects.  

Imperial has two versions of GitHub Enterprise - GitHub Enterprise Cloud and GitHub Enterprise Server.

GitHub Enterprise Cloud

GitHub Enterprise Cloud (recommended version) is a cloud-based service that sits on top of GitHub.com and provides advanced features for enterprises.

To access the Imperial College London organisation on GitHub.com, you need an Imperial account. If you need to collaborate with users who do not have an Imperial account, you can add them as an outside collaborator to the repository.

On GitHub Enterprise Cloud, users can create public repositories (anyone has read access and can suggest changes), internal repositories (anyone at Imperial has read access and can suggest changes) or private repositories (access must be explicitly granted). 

GitHub Enterprise Server

GitHub Enterprise Server is hosted on-premises (along with all data storage) and is not accessible if you are not connected to the Imperial network.

This version of GitHub has limited availability and functionality, and requires regular downtime for maintenance.

It is only recommended if you cannot store your source code in the cloud, for example, you may have a research grant that stipulates code must be stored on-premises.

FAQs

Imperial has an enterprise license with GitHub which entitles you to the following: 

  • Access to GitHub Enterprise Cloud with unlimited public and private repositories. 
  • Usage of GitHub Actions in private repositories. GitHub Actions is free for public repositories. Please try to avoid using MacOS runners with GitHub Actions as these incur additional costs. 
  • Usage of GitHub Packages in private repositories. GitHub Packages is free for public repositories. 
  • Additional security measures for private repositories such as branch protection rules, code owners/reviews and environment protection rules.  
  • Access to GitHub Enterprise Server, an on-premises version of GitHub that can be used when research grants/contracts stipulate source code must be stored on-premises.  

Please note that some of the features above are only applicable to the cloud version of GitHub Enterprise. You can find a full list of the features on the GitHub Pricing webpage.

  1. Create an account on GitHub.com if you don’t already have one. We recommend you use your personal email address so you can continue to access the account if you leave Imperial.
  2. Follow the instructions gaining access to the Imperial College London organisation article. Once you’ve completed these steps, you’ll be added as a member and will have access to all the resources.

GitHub Enterprise Server should only be used if you cannot store your source code in the cloud, for example, you may have a research grant that stipulates code must be stored on-premises. 

  1. Visit the Imperial GitHub organisation and login with your Imperial username and password. 
  2. Once logged in, you can create repositories under your personal account or ask an organisation owner to add you to their organisation. By default, you’ll also be added to the main Imperial College London organisation (this may take 10-20 minutes) where you can create repositories and store your code.

GitHub Enterprise Cloud is a cloud-based service from GitHub and is publicly accessible. You can create private repositories within the organisation and explicitly assign permissions to only users who need it. It includes all the functionality of GitHub and is regularly updated with the latest features and bug fixes. 

GitHub Enterprise Server is deployed on-premises and is only accessible via the Imperial network. It’s not possible to add outside collaborators to your repositories unless the collaborator has an Imperial account. It doesn’t include all the functionality GitHub offers and requires regular downtime for maintenance. We strongly recommend using GitHub Enterprise Cloud unless you cannot store your source code in the cloud.

If you leave Imperial, your account will be deactivated and you’ll no longer be able to access Imperial’s resources on GitHub. If you need to continue collaborating on a repository within the Imperial College London organisation on GitHub, you’ll need to be added as an outside collaborator

If you’re using GitHub Enterprise Server, you must transfer any personal repositories to another organisation/user before you leave. If the repository already exists under an organisation, you can add additional users to the repository instead. 

If you need support with GitHub, you can view their support documentation at GitHub Docs.

Ensure you select the version you are using (Enterprise Cloud or Enterprise Server X.XX) in the dropdown on the top left of the screen.

If you have an Imperial-specific GitHub question, you can contact the ICT Service Desk.