Again, like OP said, those are typically distinct functionality: issue tracking, source control, deployment etc. GitHub bringing everything into one platform is atypical and obviously done for the goal of centralization. The more stuff you add to a platform the harder it makes it to leave or replicate.
But no, technically speaking you don’t need to have all of it in one place. There’s no reason for which you must manage everything together.
I don’t even understand why people like GitHub so much, its source management sucks. The fact it still doesn’t have a decent history visualization to this day is mind-boggling.
Look for ways to do things separately and you will find much better tools. GitHub’s “one size fits all” approach is terrible and only holds because people are too lazy to look for any alternative.
I mean, they just have to appeal until they get to the Supreme Court, then give the judges an RV and they’ll rule that all service providers must police their customers or some other far-reaching shit like that.