Revision as of 16:32, 1 July 2021 by Adam Franco (talk | contribs) (More info on free vs enterprise tier.)
This page is a draft in progress.

Middlebury has subscribed to the GitHub Eduction Campus Program which provides GitHub's software development and version control tools for students and instructors.


GitHub Student Developer Pack

Students can get access the GitHub Student Developer Pack by creating a GitHub account and adding your @middlebury.edu email address and verifying it. Full instructions are availble at GitHub Docs: Apply for a student developer pack.

While most of GitHub's own service will be free for students to use, the Developer Pack provides free or discounted access to many continuous integration, testing, and hosting tools.


GitHub Teacher Toolbox

Similar to the Student Developer Pack (above), the Teacher Toolbox provides free or discounted access to many continuous integration, testing, and hosting tools.

Create a GitHub account if you don't already have one and then associate your @middlebury.edu email address with that account and verify it. Once you've verified your @middlebury.edu email address you can go to education.github.com/toolbox and click "Get the Toolbox". Be sure to choose your @middlebury.edu email address to associate the toolbox service.


GitHub "Organizations" for classes and research groups

Free-tier Organizations

You are welcome to self-service create free-tier "Organizations" in GitHub that aren't associated with the "Middlebury College" Enterprise subscription. See github.com/organizations/plan for details. For many purposes the free tier may be sufficent

Enterprise-tier Organizations

While free-tier Organizations can have unlimited collaborators and private repositories, "Enterprise" organizations get additional storage and minutes of processing for automation actions.

Middlebury's subscription to the GitHub Campus Program allows us to create virtually unlimited numbers of GitHub "Organizations" associated with our "Enterprise" subscription. Each organization has one or more administrators who can manage the settings and memberships of the Teams and Repositories associated with that Organization.

There is currently no automation support, so if you would like a GitHub Organization for your class, project, or group, please submit a HelpDesk Ticket with the following information:

  • Which GitHub accounts should be adminstrators?
    Accounts must already have @middlebury.edu email addresses verified and must have enabled 2-factor authentication on their GitHub accounts.
  • What class, project, or group is this for?
  • Is this organization going to be used for just one semester or in an ongoing basis?

ITS staff will create the GitHub Organization in our "Middlebury College" Enterprise account and make you the the adminstrator. You will then be responsible for inviting other collaborator or student accounts and managing Teams and Repositories in the Organization.

GitHub Classroom

GitHub Classroom is a tool that utilizes an "Organization" (above) and creates separate repositories for each student's work on assignments. For more information, see GitHub Docs: GitHub Classroom.

New GitHub Classroom spaces can be created by going to classroom.github.com. You will want to associate the Classroom with your @middlebury.edu email address. If you'd like an "Enterprise"-tier Organization in the "Middlebury College" Enterprise, please submit a HelpDesk ticket so that ITS staff can create an Organization for you to use Classroom with. Once we've created the Organization for you, you will be able to select it when creating "Classrooms".

Once you create the Classroom you can add Assignments to it and send students an invite to that Assigment.

It is not necessary to create a roster for the class -- student GitHub accounts will be simply listed as "unlinked" when they access assigments. At this time we don't have an integration set up with Canvas or other services, so if you would like to list students in a roster with their real names (rather than GitHub usernames), add their names to the roster -- one per line. Students will have the option to self-associate their GitHub accounts with their roster entry on assigment acceptance. If they choose the wrong student roster entry you can unlink and relink them in the Classroom's roster page.


Powered by MediaWiki