Overview
GitHub is a web-based collaboration platform for software developers. Often used for version control, GitHub gives teams of all sizes the ability to have individual developers contribute their work to an overall project in a simple and controlled way. The University of Pittsburgh has an agreement with GitHub so that students, faculty, and staff can access projects and repositories hosted by Pitt Information Technology at no cost, regardless of how many collaborators work on the projects.
Detail
Contribute, collaborate, and more
GitHub provides a large collection of tools to help developers build products and contribute to projects. Its development platform offers easy-to-use resources in coding environments that are safe and scalable. Learn about GitHub features at their website.
Get started using GitHub
You may request access to Pitt's GitHub organization by submitting a request with the Technology Help Desk (be sure to include in the message that you are requesting access to GitHub Enterprise at Pitt). Additionally, you will need to receive an invitation from a GitHub administrator (ie: your professor or project leader) to join a specific Pitt GitHub organization. Onboarding times vary, so please be aware it may take several days between the time of your request and access to Pitt's organization.
Once an invite is provided to you via an admin or in response to your request, you will receive an email with a link that will provide you access to your Pitt GitHub organization. Please note, you will be required to link a GitHub user account with an account that uses your Pitt credentials to access your organization, even if you already use GitHub with a personal account.
How to create your GitHub account via the GitHub website
1. Click Join @pitt-it in your invitation email. You may be asked to authenticate your Pitt credentials via Pitt Passport. Complete the authentication process.
2. Once you’ve clicked through the email link (and have authenticated your Pitt credentials via Pitt Passport), you should be taken to the Create Account page. Not sure where you are? This page will use a URL that includes <your-org-name> and include the form:
3. Fill in the boxes with an original username and your @pitt.edu email address & password (read our guide for password best practices and standards). If you already have an existing GitHub account, which uses your Pitt credentials, you may also use this link to connect the existing account to this new Pitt-enabled account. Once the form is completed, click Create account.
4. A new window will appear asking you to verify your account. Follow the directions to verify your account and select your email preferences.
5. Click Join a free plan.
6. A new window will appear where you will see that your Pitt GitHub organization requires Two-factor authentication. You have the option of setting up two-factor authentication via SMS, but we recommend using DUO Mobile on your device (the same one used for logging into myPitt and other Pitt-related services). You should already have the DUO Mobile app on your device. Make sure Set up using an app is selected. Click Continue.
7. Using your device with DUO Mobile, use the device's camera to scan the QR code displayed on the screen of the computer being used to create a new GitHub account.
You will be guided through a series of welcome windows on your device screen. Click through these screens until you get to the Duo home screen, which will display your new GitHub account with a temporary 6-digit Passcode.
8. Take the passcode from your phone's Duo app and enter it in the box that says "6-digit code" on your GitHub screen.
9. A new window will appear with a set of Recovery codes. These codes are important to save, as they will allow you to access your new GitHub account if an error occurs during your two-factor authentication. Click Download. Then, once your codes are successfully saved, click I have saved my recovery codes.
At this point, you should see proof of successful activation with the screen below.
10. Click Done. You will be taken to the settings page for your 2-factor authentication.
11. Click on the GitHub logo in the top left corner of your browser.
You should now see the GitHub home screen. However, you will not see any organizations or repositories. Before you can contribute or access any repositories, you need to verify and connect your account.
12. Verify your new account with the @pitt.edu email address used to create it. You should have a verification email already in your inbox. In it, click Open GitHub.
13. You will be taken to the GitHub verification screen where you must enter the 6-digit "Launch Code" provided in your email. After the final digit of your code is entered, a link will automatically trigger and take you back to the GitHub homescreen.
14. Now that your account has been created and verified, connect the account to your organization.
- Find your original invitation email in your inbox.
- Click Join @pitt-it or use the https://github.com/<your-org-name> URL from the email.
You should now be successfully connected to your invitation-linked organization. The Join @pitt-it link will take you to your Pitt GitHub organization's portal. Whenever you are granted access (or "invited") to join a repository, you can find it here. For instance, if you are in a class and your professor has created a repository for a specific project and has already invited you to join it, you will see it here.
FAQs
Do I have to pay to use GitHub Enterprise?
No. The University has partnered with GitHub to provide students, faculty, and staff with free access to projects and repositories hosted by Pitt IT, regardless of how many collaborators work on the projects.
Do I need to create a new Pitt-affiliated GitHub account or can I link my existing account?
The onboarding process connects Pitt credentials to an existing GitHub account, as these credentials are required to access Pitt-owned GitHub organizations. You may connect with an existing personal account, or if you do not already have an existing GitHub account, you will be prompted to create one during the onboarding process.
Pitt IT does not create new GitHub accounts.
What do I need to get started?
Ask your RC administrator to create a group that will be used for access to your repos. In the request, be sure to include:
- Your desired name for the new organization
- The names of one or more members of the group who will serve as organization owner(s).
When this group is created, you will receieve an invitation to join the enterprise (you will also receive notificiations when other members are added to it as well).
What is an RC administrator?
University academic and administrative units are grouped into Responsibility Centers (RCs). Each RC has designated Responsibility Center Account Administrators (RC Administrators) to manage computing resources. RC Administrators assist faculty and staff with their primary accounts. They are responsible for distributing initial passwords to new University employees. They can also create sponsored accounts for approved purposes and manage groups. Learn more about Responsibility Centers and Account Administrators here.
What is a GitHub organization owner?
An organization owner has complete administrative access to your organization. This role should be given to at least two people in your organization, however, you will want to limit the overall number of members who have owner access. For more information, see Maintaining ownership continuity for your organization on GitHub's website.
GitHub owner responsibilities include:
- Installing and managing third-party GitHub applications for your organization (i.e. Google Cloud Build)
- Participating in the decision-making process for making a repository public or private
- Providing and managing the organization's logo, public email address, and website (if applicable)
- Managing organization-wide “secrets” (if applicable)
- Managing organization-wide repo labels and the default main branch name (if applicable). Note: requests to enable GitHub actions at the organization level will be reviewed on a per-case basis.
- Creating custom member roles, including admins, reader, and more.
What is an Enterprise Organization and why do I need one?
A GitHub Organization is just a container for shared work where teams can collaborate on multiple projects at the same time under a unique name. In some cases, groups might need GitHub organizations with the characteristics or capabilities that are provided by Enterprise Organizations. These cases might include:
- Department developers and system administrators
- Research groups and labs
- Engineering and science classes
- Student projects
How do I manage access to my repos inside my Enterprise Organization?
CDS groups, in combination with a GitHub feature called Team Sync, control access inside organizations. Access to a GitHub organization is controlled by CDS group membership. Each organization is mapped to a CDS group, which can then have multiple groups or individual users as members.
To add users to an existing GitHub organization, add them to the CDS group mapped to the GitHub organization.
Repository access is controlled by adding users or groups to the designated repo.
I’m a student, how does this work for me? Can I take my student work with me?
Students requesting individual access to GitHub Enterprise will be automatically joined to a large student organization where they can take advantage of all the Enterprise features on an individual level, as well as easily collaborate with other students on smaller projects that may not require their own organization.
Before leaving the University, you should consider downloading the information you wish to keep. Access to your repositories and organizations is not gauranteed after graduation.
What happens if I leave the university or change departments?
If you leave the University, your access to Pitt GitHub organizations is removed when your Pitt account is disabled/terminated or when your account is removed from the CDS group (whichever comes first). The same holds true should your department change or if your group membership changes. If you are the org owner, ownership can be transferred. Learn more with this GitHub help document.
I set up my account, but I don't see any repositories. What happened?
This is normal. Members, by default, do not have access to existing repositories when joining an organization. Access to repositories must be assigned to either GitHub Teams or members directly. You will need to receive an invitation from a GitHub owner (ie: your professor or project leader) to access a repository.
Can I create my own repositories?
Yes! There are no restrictions on creating private repositories in an organization.
Note: Only organization owners may create public repositories or switch the visibility settings of existing repositories between public and private.
Can I use my personal account?
Yes. GitHub recommends using only one user account to manage both personal and professional repositories.
Can I merge my personal account with my new Pitt GitHub account?
Yes, if that is your preference. Learn how to merge multiple user accounts in this GitHub article.
Related Information