4 ms·
>constantly squashing and rebasing is not a feature but an annoyance it is a feature which allows, for example, to work simultaneously on several releases, pat
by trhway 2y ago
>constantly squashing and rebasing is not a feature but an annoyance
it is a feature which allows, for example, to work simultaneously on several releases, patches, hot fixes, etc. Once better alternative emerges we'll jump the git ship as we did before when we jumped onto the git ship.
>the repository separate from the data
that was a feature of a bunch of source controls and a reason among others why they lost to git.
>it forces you to
that is another reason why source controls lose to git as git isn't forcing some narrow way of doing things upon you.
I don't deny of course that for some people/teams/projects other source controls work better as you comment illustrates. I'm just saying why git won and keeps the majority of situations.
- nmz 2y ago> it is a feature which allows, for example, to work simultaneously on several releases, patches, hot fixes, etc. Once better alternative emerges we'll jump the git ship as we did before when we jumped onto the git ship. What are you talking about here? I'm not talking about eliminating branching, but the fact that merging a branch is usually just a fake single commit that hides away the complexity and decisions of the branch. see [0] into how you can leverage branches and the log for a sane commit history. > that was a feature of a bunch of source controls and a reason among others why they lost to git. Given the article, git won because it was foss, torvalds and speed, if you have proof of a good amount of people saying "I hate the division of data and repository!" then its a believable claim, or maybe you're confusing the data/repo division with cvs? git also didn't have to fight much, the only contender was hg [0]: https://fossil-scm.org/home/timeline https://fossil-scm.org/home/timeline
- johannes1234321 2y ago> Once better alternative emerges we'll jump the git ship as we did before when we jumped onto the git ship. It's not that easy at this point in time. git carries a lot of momentum, especially in combination with GitHub. Anybody learning about software development learns about git and GitHub. Software is expected to be in GitHub. At the time git became successful there were arguably better systems like mercurial and now we got fossil, but git's shortcomings are too little of a pain point compared to universal knowledge about it and integration into every tool (any editor, any CI system, any package manager, ...) and process.
- trhway 2y ago>It's not that easy at this point in time. git carries a lot of momentum, especially in combination with GitHub. CVS back then was like this too, including public repos, etc. >At the time git became successful there were arguably better systems like mercurial I specifically mentioned Mercurial above because they both emerged pretty simultaneously responding to the same challenges, and Mercurial happened to be just inferior due to its design choices. Companies were jumping onto it too, for example our management back then chose it, and it was a predictable huge pain in the neck, and some years down the road it was replaced with git.
- johannes1234321 2y ago> CVS back then was like this too, including public repos, etc. Not really. CVS had too many flaws (no atomicity, no proper branching, no good offline work, etc.) Subversion as "natural successor" fixed some things and was eating some parts of CVS. At the same time sourceforge, the GitHub of that time, started to alienate their users. And then enterprises used different tools to way larger degree (VSS, sccs, Bk, perforce, whatever) while that market basically doesn't exist anymore these days and git is ubiquitous. And many people went way longer without any version control than today. Today kids learn git fundamentals very early, even on Windows and make it a habit. Where's in the early 2000s I saw many "professional" developers where the only versioning was the ".bak" or ".old" file or copies of the source directory.
- swiftcoder 2y ago> (VSS, sccs, Bk, perforce, whatever) while that market basically doesn't exist anymore these days and git is ubiquitous. Perforce still has a solid following in the gamedev space - even with LFS, git's handling of binaries is only mildly less than atrocious.
- johannes1234321 2y agoYeah but market share shrunk a lot (especially since the market grew massively) and even Perforce is a tool integrating with git these days.