* Create private repos for all the participants well in advanced, and ask them to commit their changes to their designated repo.
* At the time of the deadline, all pushes will be blocked, and/or the current version will be pulled down to a "demo" machine.
* Participants must provide a make file (or something similar) to automate the building on all projects.
* When their time for demo comes, they will only get to demo whatever that has been compiled on the "demo" machine.
* The "demo" machine would be hooked up to the projector, and will be the only machine used for demo-ing purposes. This also saves the time spent in hooking up their laptops to the projector.
That's all. Sounds academical, but it's a really good way of monitoring cheating (provided you have an audit team as well).