The people at Guthub were kind enough to provide an organizational account for me and my class, and I have a question about a specific setup. I have 40 students, and I want each one to have a private repository. As such, each student should only have access to their, and only their, respective repository (there’s a public one that all can see). I want to make sure the following is correct:
- The “Default repository permission” for the organization (under Settings > Member privileges) is set to “None”
- No students are added to the organization proper
- Each student is invited to his own private repo
- I, as an owner, would have full access across the board
This seems right, and I will check with the students to make sure they can see only their repo, but if anyone has any suggestions, they would be appreciated!
I was going to suggest the tool by github that they stopped developing in favour of “classroom”:
It allows you to do precisely what you describe regarding creating private repos that only they are you can access. However, when you say [quote=“cajund, post:1, topic:2656”]
No students are added to the organization proper
The private repos will belong to the organisation - so I’m not sure if this solves your problem. You can’t have a private repo that is not part of the Org. I think I just might not understand what you mean by students not being part of the organisation proper.
(for what it’s worth I wish they could continue development of teachers pet - perhaps someone can take it over - classroom doesn’t really replace what it does)
It is possible to add contributors to the organization itself. You can also add people to a private repo. I was concerned about students having access to the organization as a whole would also have the ability to see all of the private repos. But I think I have it set up properly.
Thanks for the reply.
I have been teaching with Github organizations for a few months now so I hope by sharing how I’ve used it and how it relates to your setup, you’ll get going on setup easily!
- “none” is correct. This means that members of the organization can only read, fork the repo & make a PR - they cannot write to that main repo.
- No students are added to the main org - correct!
- There is no private repo for the students in that org. If you are part of the organization, anything built under it is accessible by members. So all students with a repo will be able to see each others contributions to their own repo as well as any contributions they make against other repos through PRs or issues.
- You will have full access to their repos. When you create a new repo in the org, you set the settings for how members see and interact with that repo. You also have read and write-ability for any repos made under your organization.
Hope that helps!
I used GitHub for the first time last semester and I intend to use it again this semester. I teach Java/Web programming for engineering undergraduates at UFRJ, Rio de Janeiro, Brazil.
I posted an english translation of the instructions (modified) at https://github.com/UFRJ-POLI-DEL-EEL418/sumario/blob/master/using.GitHub.to.receive.assignments.pdf.
Hope this will be of some value.
Setting up a GitHub Classroom as described in the videos here covers all of this. No need for more unless you want it. I simply created a classroom with an invite that I put in our course chat room (but could be emailed). I was sure to click “Private” in the assignment starter repo settings. There was no need to add anyone to an organization.
I did add a specific GitHub organization (and therefore Classroom) for each of our school locations (200 students max).