No access to template repo when creating Classroom

One of my TAs is trying to create Classroom assignments, but Classroom does not seem to recognize that he should have access to the template repository.

The template repository is a private repo in a separate (public) organization. However the TA is a member of this 2nd organization, and has access to this private template repo (we’ve tried with read, write, and admin privileges), as demonstrated by the fact that they can view the private template repo on GitHub.com in a browser without any issues.

However, when they try to find this private template from the GitHub Classroom assignment creation wizard, they are restricted to public repos from the organization, and the private template does not appear in the “Select a repository” field (nor do any of the other private templates that they should theoretically have access to from this organization).

Attempting to create the assignment with this repository regardless gives this error: “Invalid repository selection, please check it again.”

I can create the assignment from this template without issues. But, bizarrely, one of the other TAs can also find the private template, despite having the same access permissions as TA who is having the aforementioned issue.

Other notes:

  • I double checked accounts, and the TA’s account seems to be consistent, and is registered as a Classroom Admin.
  • The TA who is not having problems is a contributor to the private template. Is this somehow affecting how GitHub views his access to the repository?

It sounds like a permissions issue to me, but I’ve fiddled around with all the access options that I can think of to no avail. Any suggestions?

I have a similar problem and on assignments that I’ve already created, it shows the template repo as “Deleted Repository”.

I think the answer is contained in Please read if you are using starter code outside of your GitHub Classroom organization for an assignment.

2 Likes

This problem happened to me today. The solution is: go to your template code → fork it to your organization → update your assignment’ starter code to be ‘organization/assignment’.

It seems the GitHub classroom doesn’t permit using the template in your personal GitHub account. You have to fork it to the organization or make it public in order to use it as an assignment template.

1 Like

Yes, it started happening to me too as well today (unfortunately right in the middle of my class, breaking my assignment creation link at the worst possible moment…).

I assume this is related to @ohitsmekatie 's aforementioned update suddenly coming into effect (thanks for referencing that, @pattacini ). Presumably this was what was already preventing my TAs from creating such assignments. I also assume that GitHub today rolled out a fix to whatever bug had allowed me to set up all my assignments still using an external private repo as the template, even though apparently I should not have been able to do so since October(?!).

Forking, as you mention, is one option to keep the repo private. Alternatively, you can copy entire the repository over by going to the destination organization, clicking the green “New” button (top left), and then the “Import a repository” option at the top of the next page.

© 2017 GitHub, Inc.
with by
GitHub Education