Improved Grading and Commenting Platform via PRs #1825
Description
Feature request ✨
The Problem
Right now, the described best practice for commenting and reviewing student submissions is on a commit by commit basis.
However, if students make several commits over he course of the assignment (a good practice!) then it can be hard to find individual changes in the commit view to comment on them.
The solution
@alexch Proposes a workflow at the education forum that uses Pull Requests to provide a Platform to provide comments on ALL changes made by a student, no matter how many commits covered by the changes. It consists of three major steps:
- Create a branch called "template" from "master" at the time of assignment creation or just before.
- Add one small change to the "master" branch so that the branches are not identical. (I add a date line to the readme at the bottom)
- Create a pull request from Template <-- Master with a title like "PR used for teacher comments, do not merge."
As students make commits to master, their changes will appear in the PR, and comments can be added by the teachers and students over time or after submission. This is a much better interface for communication than the commit based comment threads.
The Requested Feature
GitHub Classroom should automate this process. This would require four changes.
- Add a checkbox in the Assignment Creation screen to enable this option and save it in the database for the assignment.
- During copying to student repos, use the API to make the "template" branch, add and merge the small change to master, and create the pull request with an appropriate title.
- If possible using GitHub tools, lock the template branch for editing by the student and disable merging of the PR by student, to avoid accidental breaking of the comment space.
- Add a direct link to the PR next to the link to the repository for each student in Classroom