A couple of things I've found, using GitHub for individual assignments (I also use it in another unit for a class-wide project, where it works very well)
- user management is a bit of a pain. Students are always late getting their github usernames to me, often with typos, and there are three different dates during term when the class-list changes (last day to enrol, last day to withdraw without incurring a HECS fee, last day to withdraw without academic penalty). If you could do an LTI endpoint, that would be helpful, as most LMSs support LTI. At the moment, we're considering running GitLab instead, as that supposedly has LDAP and so can use our university server logins.
- using teachers-pet (GitHub's command-line tools) for assignments this term, I found an issue where a student made a public fork of their assignment repository. Unfortunately this is problematic, as it could cause students to (accidentally) run into trouble with university plagiarism policies (where putting your work up for others to plagiarise in an assignment is also outlawed).