I just learned that students can add their own non-Classroom repos to my Classroom organizations.
Here is what I think is happening: Each GitHub classroom is associated with a GitHub organization. When a student accepts a GitHub classroom assignment, he becomes a “member” of that organization. Members are, by default, allowed to create private repositories.
Therefore, once a student has created a repository through Classroom, he can then add any repo he likes to the organization.
I assume that the organization’s “repository creation” setting must be kept at “private” (and that unchecking this option would prevent the system from creating new Classroom-based repositories).
Is that correct? Is there a way to allow students to accept assignments, but prevent them from adding other repositories?
(On a related note, is there a way to remove students from an organization at the end of the semester? Removing their repos doesn’t seem to revoke their membership.)