It sounds like you are asking about student accounts using SSH/RSA keys. If so, there are plenty of resources for SSH (for example, on the SSH website), but the general answer to your question is that itâs possible to use the same SSH key on multiple computers for the account, although many would say itâs more advisable to create a new key per computer.
Obviously any way you can share a file is viable to share this SSH key, but if youâre sharing this file in an insecure/less secure fashion, itâs no longer good for authentication. Thumb-drive, cloud-sharing service, shared drive for the school are all ways this SSH key could be made available for the students, without having to create a new SSH key/authorized key on Github for every one. The biggest argument against this method is similar to the shared-passwords problem: if one computer gets compromised, you have to change the key on every computer the student may have used in order to access Github.
Hopefully youâre already encouraging or requiring the use of passphrases for the SSH keys you are using, which helps mitigate the risk when a key is lost, and is advisable whether youâre doing one key per computer or multiple computers with the same key.
One note: if you are using IP address-based keys (with a FROM entry in the configuration file) you would not be able to use a simple one-key approach, but would have to have individual keys for each computer, regardless of what can otherwise be done.
From your question, I believe youâre already having the the students push when moving from one computer to another, but if this is not the case than Jakubâs stash solution or Kevinâs are both viable ways of ensuring the work is available anywhere the students are. I would however submit that a valid third, middle of the road option would be working with âfeatureâ or âpushâ branches - a simpler concept for some people than the idea of the stash (for some reason), it allows you to have work available everywhere, but doesnât break the âbest practiceâ of milestone-only (or even functional only) check-ins.