A step-by-step guide on setting up your GitHub Organization for classroom use.
GitHub Classroom automates the manual processes described in this guide and is the recommended way to teach with GitHub.
There are two options for how to structure assignment repositories:
We use pull requests to collaborate within GitHub, as do many other companies and open source projects. Rather than trying to restrict visibility between students, embracing the potential of them learning from one another's work (through the forking method) is encouraged, when possible
Unless there's some special reason, I want all the repositories to be public -- the kids have plenty of ways of sharing information without us knowing about it so I'd rather try to create a culture of sharing with attribution.