Github: course organizations
Setting up an organization for use in a course
If you want to use Github for a course, it is a good practice to:
- set up an organization for the course
- request an academic discount for that organziation.
Benefits (basic)
These benefits flow easily and automatically from using github in this way
- It allows the creation of unlimited private repos to which the instructional staff automatically has full access
Benefits (advanced)
These benefits require some additional programming of custom software
- Having students belong to an organization provides a way to differentiate students in the course, and instructional staff, from others when using Github OAuth as a login mechanism for a webapp
- Having students create repos under an organization allows central management of “github hooks” to help manage, record, and structure students interactions with github
How to set this up
- Set up a course organization at https://github.com/organizations/new
- Set it up on the free plan
- While logged into to github with the account that created the organization, visit: https://education.github.com/discount_requests/new to request an academic discount.
- Add instructional staff as Owners.
- Set the default member privileges to none
- Visit the link https://github.com/organizations/organization-name/settings/member_privileges where organization-name is the name of the organization. You can get here by visiting the Settings menu for the repo, then selecting Member Privileges.
- Scroll to the bottom of the page, find Repository permissions for members, and set the value to None. This is important if you want students to NOT be able to see one another’s private repos (only course staff.)