How to push changes to student repos?

Hi everyone!

I just tried using GitHub Classroom and the Classroom Assistant for this first time this quarter.

I was thinking that I’d like to clone all the repos (e.g., using Classroom Assistant) and then grade them by leaving a feedback file in each repo. Getting the feedback to the students would then be done by adding, committing, and pushing each individual student’s repo.

I was able to add and commit (from the command line) but when I tried to push I got an error:

remote: Temporary clone tokens are read-only.
fatal: unable to access ‘https://github.com/2019-BIT-142/bit-142-lesson-10-amberleemin.git/’: The requested URL returned error: 403

Hopefully I’m the one who’s doing something wrong, but any help or advice would be greatly appreciated :slight_smile:

1 Like

Hi Michael,

To the best of my understanding it is not possible to do what you’re trying to do due to Classroom using temporary tokens. I ended up kludging together a set of shell scripts that clone my students’ repos, run the tests, and create/commit feedback as markdown files and pushing the changes up.

1 Like

I realize this thread is probably dead, but I’d love to see an easier workflow for updating student repos. Like @joeparislbcc, I also ended up writing a custom bash script to push changes en masse, but I’d much prefer something like auto PRs triggered on changes pushed to an assignment’s template repo. Despite testing before releasing each assignment, there are times where changes are necessary. I would imagine that is actually a pretty common pain point among users of Classroom.

In terms of UX, what about something like a “Create and merge PR” button on the assignment settings page in Classroom that would allow one to select a branch from the template repo to use to update student assignment repos?

2 Likes