Sometimes it's best to start with something that transparently "just works", make the students aware of other options like gitlab, and let them explore those if they wish.
How to stage and sequence the exposure to the details is indeed important. I am not advocating exposure to the details right away, but the option has to be available at a reasonable price (be it in money, or in time).
There is also the "teach a person to fish" thing, rather than handing him/her a fish. Although many are in the business of handing out fishes, stale ones too.
No one argues that you need to have people host their own web server to start learning how to write Javascript. In fact, most would argue against hosting your own that early on. It's not beneficial, and more likely to end up tangential annoyances than solving the problems that matter for the person's skill level.
Just because someone teaches you a different part of the stack first doesn't mean they are handing out fish...
It doesn't allow users/students to analyse, or learn about, its inner-workings. I don't know how important that is but with git being so easy to deploy, why not use something students can maintain?