Git is popular because it is free, fast, works well enough, and was popular in some major projects.
Its major advantage for most orgs (those who actually use it in a centralized manner, with a corporate repo that everyone syncs with every day, unlike the Linux kernel team) as compared to Subversion is that it makes branches cheap and easy. The ability to work with history offline is also nice in niche situations, but definitely not the major selling point.
Its major advantage compared to Hg is that it is more popular.
IMHO branching itself isn't expensive in Subversion, the problems arise when you merge (feature)branches back. If you branch off (for release branches) and then just selectively merge certain commits to that branch only if needed (the info being stored in svn:mergeinfo), I think its not that bad. I prefer branch-by-abstraction and trunk-based dev anyway, so here you go ;)
I feel the same way when I hear griping about vim or Java. Like sure, there's surface stuff to cry about... Until you start to hear people's ideas. Then you're glad people have managed to mostly leave it alone!
I also thing there's just this class of tools that only make sense when you get to a certain level with them. Learning curves are just steep on some things. That's not the same as bad design.
> Do you use GitHub?
Just a bit, it's nothing I look forward to. I mainly use Gitlab due to work, but it's not that much better.
> Do you work with a team?
Yes.
> Did you really review other alternatives and try them out?
Only SVN some years ago and I hated it.
It wasn't my intention to say that Git is the best VCS we'll ever get, but I enjoy using it and (besides the sometimes a bit baroque command line syntax) have nothing to complain about. So, whenever there's the need for version control, I choose Git without second thought and so I never even felt the urge to try something else. I'm sure that this will change at some point, but not yet.
same answer.
No king rules forever. C has become a much more niche language than it was 20-30 years ago, and the trend continues. C++ has slowly eroded most of its niches, and there's a slew of new languages gunning for its throne - Rust being the most likely to succeed (especially once we will have some popular Linux modules in Rust).
Will there still be a niche for C programmers 50 years from now? Absolutely. Just like there is a niche for COBOL maintainers today.
In a similar grain, git is a beautifully designed and conceived simple content-addressable object store. With a complex and challenging UI (I don't have any problem with it, but still).
Neither of these tools are perfect; in fact they can sometimes be objectively be more imperfect than many of their competitors. But they are special.
> some have written the same about various assembly languages, about COBOL, about FORTRAN, about LISP in AI
It's not what people write about - it's what they use. C, UNIX(/Linux), Git are all very similar - and Pervasive.
>inb4 it isn't simple
it is