GitHub is really good, but there's a small problem with that
Platforms like GitHub aren't something new, they are more than a decade old, mature and great platforms. But I think that during this period of time there was significant shift in how we perceive those tools. At the beginning it felt like they were just "git hosting" with some useful features. I've tried some cherry-picking searching and found those descriptions: GitHub provides software repository services using Git GitHub, is a provider of Internet hosting for software development and version control using Git. It offers the distributed version control and source code management functionality of Git, plus its own features. But nowadays I'd call them "project management platforms" - you have:
  • Issues/Discussions to discuss stuff
  • Tasks management e.g Kaban board
  • Wikis to help onboarding people
  • Review process
  • CI/CD Cloud integrations to test, perform automated checks and eventually deploy your software
  • Security warnings
  • Various access configurations like repo/org being only accessible with company's VPN
  • A lot of other stuff that I'm not even aware of
And they are good at those things. There's no other software that I enjoy to use as I like using GitHub at work, but I believe there's one issue: Previously, when GitHub was more like just git hosting, then this small detail that it is "git" was important, but nowadays I'd say that it is just a letters management engine or just some GitHub's backend (one of many), and this letters management engine is just a part of the whole "project management platform". Nowadays, I believe people are mostly using GitHub because it provides whole project management, integrations, defines workflows, has good UI/UX, while having strong community, but git is not #1 reason for using GitHub. Why do I think so? because it is not really that important whether I click commit & push in some e.g GitHub Desktop or other UI tool, or type "git commit" or "other_tool commit_like_command". Under the hood there can be any other technology that fulfils the contract. So what's the issue here? I'm worried that just because GitHub is so good, then unless they decouple from git as letters management engine and allow any/other, then we will be locked with git. I feel like git's successors will have a really, really hard time getting adopted just because of the whole platform effect. Edit1: I realized that GitLab had attempts to support other "letters management engine(s)", so I removed it.