Add shared (locked) code in education teams

Describe your feature request
For a lot of assignments I prepare base code and my students use it then - typically two or three files with classes that are used in the project but developing them is not the target of the excercise. E.g. extra file containing class Person that declares fields name and age and I want students to sort an array of Person[] by age and list their names.

it would be great, if I could provide these classes to the students in “read-only” mode and if I update them, the update would automatically be pushed to students’ solutions and also the master solution provided by me.

Ideally I would make them part of the “lesson contents” directory, this code would behave as if it were in their project directories but would be immutable and always up-to-date

What problem(s) would this feature solve?

  • Sometimes students update code that is not meant to be updated and bypass the excercise instead of solving it
  • Many times it happens that there is a bug in my code and students discover it while solving the problem. There is no way how to push an update to those who already started work
  • The same applies to Master solution offered by me to the students - after updating

Explain what you were trying to do when you came across the problem leading to this feature request

Developing hundreds of C#, PHP and JS assignments, testing them with students, prociding solutions and updating the assignments.