@musicmatze okay I'll bite. It's the UX. The CLI verbiage is unintuitive. EG branches aren't branches. A branch should be called a head, a bookmark, or a leaf.
Moves and renames are not handled well, and can look like files were removed or added.
No immutable commit annotations. Hg branches are labels on commits that cannot be repositioned, if I want certain commits never to be pushed, git doesn't seem to give me options.
All that said, I like git just fine when I use mercurial to clone git repos.
@travisfw what does, in your opinion, qualify as a "branch"? Why are moves and renames not handled well? If you `git mv`, that's a move!
There are immutable commit annotations! They are called "tags" in git!
@musicmatze a branch is a whole unmerged dag of commits. Not just the one at the end.
With git mv, sometimes in the diff, the whole file will be subtracted in its old position and added in the new position.
Would you apply the same tag to every commit? I haven't ever seen tags used that way.
@musicmatze Yes, it is the best! Especially, if you have used other VCS like Microsoft's Team Foundation Version Control or TortoiseSVN.🤢 🤮
With git, everything Just Works™.
@musicmatze One reason I regularly encounter is that git won't force any specific workflow on you. This means git is little opinionated and allows you to choose whatever suits you best. The thing is: people like (and actually expect) opinionated tools which make on thing work. But if you are not that well familiar with git it can get really hard to "fix" a mistake you did while exercising a git workflow someone else chose for you. This is the point where git usually "sucks".
This Mastodon instance is for people interested in technology. Discussions aren't limited to technology, because tech folks shouldn't be limited to technology either!