Live data from Hacker News

Is Git Irreplaceable? (2019)

fossil-scm.org

421–430 of 559 posts

Re: Is Git Irreplaceable? (2019)

#421

Earlier quoted context omitted.

As a very basic git user, about once a month my local git repository will get into a state I cannot fix. I cannot revert, cannot reset, cannot make it just fucking be the same as origin/master. Usually I accidentally committed to local master and then did a couple other things and it's just easier to blat and re-clone than work out how to resolve. Git is hard for idiots imo, and there are a lot of us

> Usually I accidentally committed to local master and then did a couple other things Create a new branch and check it out while you are on the last commit (git checkout -b my-branch), delete the master branch (git branch -D master), and pull it again (git pull -u origin master). You'll end up with a local branch with a bunch of commits that you can merge, rebase or cherrypick, depending on what you want. If you want…

Is there a reason for -D and not -d? Wouldn't -D also delete the remote branch if you accidentally pushed your changes?

Re: Is Git Irreplaceable? (2019)

#422
post #48

Git's biggest flaw is that it doesn't scale. If a new system can fix that without sacrificing any of Git's benefits, I think it can topple Git. It's ironic that Git was popularized in the same era as monorepos, yet Git is a poor fit for monorepos. There have been some attempts to work around this. Google's `repo` command is a wrapper around Git that treats a set of smaller repos like one big one, but it's a (very) le…

Monorepos are a terrible idea.

Re: Is Git Irreplaceable? (2019)

#423
post #392
post #337

Earlier quoted context omitted.

Git has a low level plumbing layer and a high level porcelain layer. The design allows for writing alternative porcelain layers. I believe magit is an example of this.

Magit is the only example of this

What about the fugitive plugin for vim?

Re: Is Git Irreplaceable? (2019)

#424

Earlier quoted context omitted.

Having history available locally also means you can perform interesting operations on history -- like "git blame" -- without making the server do all the heavy lifting.

The problem is, is that git will happily destroy history. git blame is not useful because it doesn't tell you who authored the line of code.

> The problem is, is that git will happily destroy history.

No, people will happily destroy history. Git is just a tool.

Re: Is Git Irreplaceable? (2019)

#425

Earlier quoted context omitted.

Facebook[1] and Google[2] have both publicly stated that they are using Mercurial internally, so "near death" seems like an exaggeration. Mercurial has some significant advantages over Git if you want to implement a scalable backend for really large repos. [1] https://engineering.fb.com/core-data/scaling-mercurial-at-fa... [2] https://cacm.acm.org/magazines/2016/7/204032-why-google-stor...

Theres been plenty of work done to make git enterprise scale in the last year https://vfsforgit.org/

That's a promising project, but it's currently Windows-only. My main point was that Mercurial is very much "not dead yet!"

Re: Is Git Irreplaceable? (2019)

#426
post #319
post #134

Earlier quoted context omitted.

That's like saying DVCS has nothing to do with VCS -- it's just the server model. Every major advance has been accomplished by increasing the scope of version control. Arbitrary diff/merge in Git is a great example of the Turing Tar-Pit. It's possible, but prohibitively inefficient for many things I want to do. You can't add your own types, index, or query optimizations. Today, if I want to store data for my applicat…

> Today, if I want to store data for my application, I have a choice between good support for rich object types and connections (e.g., Postgres), or good support for history and merging (e.g., Git). There's no one system that provides both. I like the way you put this. In case anyone's interested in brainstorming I'm dabbling in this problem with a thing called TreeBase ( https://jtree.treenotation.org/treeBase/ ). I…

Have you looked at Qri? (https://github.com/qri-io) - free & open source dataset versioning. Also: https://qri.io

Re: Is Git Irreplaceable? (2019)

#427

Earlier quoted context omitted.

That is not easier than "blat and re-clone" so I think you're proving their point.

If you’re just going to blat and reclone, then you may as well use a folder system instead of git. I see no reason git needs to be changed in order to cater to people who refuse to read basic documentation or learn from their mistakes.

I did not read brigandish's comment as advocacy of 'blat and reclone', I took it to be a comment on git's awkwardness.

I have considerable sympathy for the RTFM reply, but I do not think it is the last word that shuts down any question of usability. What seems clear to me is that there are a lot of people using git who probably should not be. In many cases, they do not have a choice, but I also suspect that many of the organizations that have chosen git do not have the issues that it is optimized for.

Re: Is Git Irreplaceable? (2019)

#428

Earlier quoted context omitted.

That is not easier than "blat and re-clone" so I think you're proving their point.

If you’re just going to blat and reclone, then you may as well use a folder system instead of git. I see no reason git needs to be changed in order to cater to people who refuse to read basic documentation or learn from their mistakes.

> I see no reason git needs to be changed in order to cater to people who refuse to read basic documentation or learn from their mistakes.

In my opinion, solving problems and making improvements involves reducing complexity, not defending it. Many people, including myself, have read the Git docs and learnt about the underlying data structures etc etc and still we can make the claim that it could be better, in numerous ways.

Calling everyone feckless won't invalidate that.

Re: Is Git Irreplaceable? (2019)

#429

Earlier quoted context omitted.

> I don't see any obvious flaws with Git. Merge conflicts.

No VCS will be merge conflict-less without locking files. I'd rather not lock files.

I'd rather lock files, but be able to unlock them, to be able to coordinate with others and proactively reduce merge conflicts.

Re: Is Git Irreplaceable? (2019)

#430

Earlier quoted context omitted.

I think it's simple and elegant as a data structure, when what people need and want is something that is (at least also) simple and elegant in its UX and most importantly VERY simple and elegant for the 80/20 use cases. For example a typical question on Stackoverflow is "How do I answer which branch this branch was created from", always has 10 smug answers saying "You can't because git doesn't really track that, bran…

As a very basic git user, about once a month my local git repository will get into a state I cannot fix. I cannot revert, cannot reset, cannot make it just fucking be the same as origin/master. Usually I accidentally committed to local master and then did a couple other things and it's just easier to blat and re-clone than work out how to resolve. Git is hard for idiots imo, and there are a lot of us

Git push/pull -f

Then write a little merge message and you are good to go.

Post reply on HN