At the beginning of this school year, our school decided to add GitHub to the blocked list, making it unreachable without a wifi hotspot. With build season fast approaching, I’m looking for a way to promote continual commits of code assuming GitHub is still blocked. While “just using a wifi hotspot” might still be the optimal solution, I’m interested in hearing a variety of other solutions as well.
My preferred route: talk to the district. Maybe you can convince them to unblock it in general (I know, I know). Another route they may consider - often firewalls can be configured to allowlist specific computers (e.g. via MAC address). Perhaps they’ll agree to allowlist a set of team computers.
Direct alternatives (may or may not have luck if the school finds GitHub to be unacceptable): GitLab or BitBucket
Less direct, but perhaps more workable with the school: You could host your own Git server, via Azure, AWS, GCP, etc. Either on a free tier or using an educational tier (we’ve gotten free Azure credits for some team apps we hosted in the past).
Luckily we don’t have quite that bad of a problem, but do have some similar struggles. Our district blocks SSH, and GitHub is really pushing towards that right now.
Should have the lead mentor talk with the school admin/distinct IT regarding that, seems silly for them to be blocking one of the most common and popular tools. Go at it from the angle that the students will be learning how to do modern team based programming.
If that doesn’t work, there are other GIT repository out there. If you want to go the own it route, AWS has a Git Rep called CodeCommit, it runs like Github and you can just deploy your own private repository there. [5 free accounts and then $1/month - seems pretty reasonable]
Our district blocks github too. (and now they blocked teachers from having admin access)
The best solution is to install a VPN if possible. If you are able to get one installed, do not let your school district know about it because they will try and block it
My district has offered several times to unlock github for certain students and mentors, but haven’t actually done it yet.
I ended up installing PIA VPN which works well for me. Unfortunately now, I will have to find a different solution on newer computers since I cannot install VPNs anymore.
The route we will have to take for this is to have a computer that is off the school’s network (Login/windows). That way you will have admin access and can install a VPN.
In short: VPN
As per our corporation’s Acceptable Use Policy, installing and using a VPN within the school system is an offense that could lead to termination.
Seriously, have your faculty team member talk with IT. It’s not hard to get sites unblocked, even if it’s only for a select set of approved logins.
We ran into this issue recently. We talked with the school’s IT department, and they temporarily unblocked it for us. However, in the long term we will need parental permission from each student for their student wifi accounts to have unblocked access to GitHub. A bit annoying, but we’ll likely just bake it into team permission slips in the future.
VPN, while it may work, is a dangerous solution.
Oh joy… 3468 isn’t the only one dealing with this… Our School Board blocked GitHub 3 weeks ago (interestingly only days after we had the first real programming session using GitHub to have everyone upload their code to separate branches, so I’m guesses we raised some flag on it…) and similarly are scrambling to work with both the school board and the school’s IT to come to some compromise/solution… This was not made easier by the timing with less than a week to raise the issue before the winter break started…
It is because GitHub clearly has all the hacker mySQL injection attack blockchain Log4j exploit virus free windows activation key attack vectors. I don’t blame them.
Another possibility, depending on their blocking solution would be to unblock specific URL patterns for your team’s repo, etc.
Years ago, before github existed, we self hosted a CVS server. The server was a corporate laptop we got from a sponsor. Our build site also didn’t have internet access. The laptop would live at a mentors house accessible via the internet most of the time, and would be set up at the build site during meetings. We also set it up at competitions.
You could do something similar, and push to github after each meeting.
You can self host a GitHub server as well. Allows for development team to work together and then do a push to your online account from a laptop off the school network.
I’m assuming that your school is blocking the domain github.com entirely. At our team’s school they blog the SSH protocol (TCP port 22) so we cannot use github repos cloned with ssh:// links, thankfully clones using https:// links continue to work.
Do your classrooms have ethernet ports? For whatever reasons our school district doesn’t filter connections that originate from the hardwired LAN, only WiFi connections. So the easiest way for us to get around any blocked domains or ports is to just plug into an ethernet port.
We’ve had various maven repository domains for 3rd party vendors blocked. This will cause some new builds to fail in VS Code. We always report them to the staff to unblock.
If asking nicely doesn’t work, you can set up proxy to tunnel github.com requests out past the firewall. Everyone who uses github on campus would need to set up a proxy. And you’ll need some outside proxy service, or set one up yourself. Github Proxy Tutorial
Back in my sophomore year, when the FTC program was just starting up, we had a lab of computers that we couldn’t connect to the internet. So I ran an in-house GitLab server and put all the computers on a LAN. It worked well, other than the computers being 13 years old and all crapping out randomly
Not sure why everyone boo’d my answer. If you need to get work done, you need to get work done. IT is always backed up so during a season, you really don’t have time to ask. VPN is a quick solution that is cheap and effective.
An alternative method is using a web server. If you have a website with CPanel, I believe CPanel now has a git repository feature. It’s not very good, but it works.
The real problem with not using GitHub is that pretty much every team uses Github. If you want to reference someone’s code, it’s most likely on GitHub. Even the WPILib is on Github
Pretty sure because what you suggested will result in most school districts revoking technology access for students and often times results in punishments up to termination for staff. I’ve never seen a code of conduct or acceptable use agreement that didn’t forbid a VPN on a school network
You could look at hosting your own instance of Gitea or Gogs or GitLab somewhere.
You can also set up any machine with SSH & Git installed as a git remote… not quite as user friendly, but it’d work in a pinch.
This topic was automatically closed 365 days after the last reply. New replies are no longer allowed.