3 ms·
I consider git the best software ever written. I used to work with some other SVCs, and I cannot thinking on leaving git now. Somehow, I feel it like a limitati
by akabalanza 10mo ago
I consider git the best software ever written. I used to work with some other SVCs, and I cannot thinking on leaving git now. Somehow, I feel it like a limitation for my mind.
I'm following this Jujutsu project, I'm genuinely curious to see what it can bring to the SVC scene.
- DarkNova6 10mo ago> I consider git the best software ever written. How so? I worked with Git all my professional life and I can't deny its efficacy. However, I would not call it un-improvable given all types of corner case issues I have had with it over the years.
- akabalanza 10mo agoMaybe "best ever" is too bold, but both proven efficacy and mainstream popularity for over 15 years, without being a bulky thing everybody just accept (like vscode), I don't see many other software examples. Anyway, sorry for triggering you with the first bold statement! I actually wanted to emphasize the curiosity over jj.
- gilrain 10mo ago> Anyway, sorry for triggering you with the first bold statement! Do you imagine someone to be triggered any time they correct you? Like, a sort of trigger you respond with whether accurate or not?
- notrealyme123 10mo agoFound myself resonating with this a lot. Food for thought. Thanks for the comment.
- oblio 10mo ago> without being a bulky thing everybody just accept Git isn't bulky in terms of RAM usage but it is bulky in terms of mental capacity that has to be allocated to it.
- DarkNova6 10mo agoNot triggered at all, I was just asking a curious question :-)
- fastasucan 10mo ago>Anyway, sorry for triggering you with the first bold statement! I actually wanted to emphasize the curiosity over jj. People does not have to be triggered to ask follow up questions. Its ok to even ask a challenging question as a response of a statement, without being an indication of their mood.
- skrebbel 10mo agoNo software that has 3 names for the same thing (git stash —cached vs —keep-index wtf‽) deserves to be described as “the best ever written”
- 1718627440 10mo agoThat is not the same thing, --cached means use only the version cached in the index, --index means also use the index. What is the third thing you have in mind?
- skrebbel 10mo agoThat’s totally the same thing, they’re about what to do with the staging area but using 2 words for it (index and cache). The third term is “staging area” or the flag --staged for other commands. Any sane tool uses one word for each concept, not three. The Git CLI is full of this sort of shit and it drives me mad.
- 1718627440 10mo agoThe term "staging area" doesn't originate from Git itself, it was coined by third-parties. The single term you are looking for is index, it used to be cache, but was renamed long ago, and now cache only remains as a verb in some places.
- skrebbel 10mo agoIt wasn’t renamed. If it was renamed they’d have deprecated --cached and introduced a new flag with a proper name. Also why does “git restore --staged” exist if the term “staging area” isn’t from Git? And why does “git add -i” have the words “staged” and “unstaged” all over the output? The answer to all these questions is that Git is made by people who care very deeply about data structures and very little about users. Git is needlessly difficult and this is just one of the many places where it shows. Don’t get me wrong, I’d much rather use a VCS with good data structures than one with good naming. Git is popular for a reason. But the bad CLI design is just such a waste because it makes Git needlessly hard to learn to the benefit of absolutely nothing. It’s not a tradeoff. It’s just shitty.
- Hammershaft 10mo agoI think Git is incredible version control hiding behind a terrible interface.
- oblio 10mo agoAn incredible version control system would probably be able to version empty folders, too. And other limitations I'm forgetting right now. It's good but I wouldn't call it incredible. I hope some day we do get a better SCM.
- OvbiousError 10mo agoHaving worked with cvs and svn, git has been an absolute blast. That said, the first thing I do now in a repo is jj init --colocate. The fact alone that there is an operation log in jj, so you can easily revert your last command, or go back to any point you want, is mind blowing coming from git and having experienced frantically digging through the reflog. But that aside, the way to work with branches ahem bookmarks, commits, conflicts, just makes so much sense in a world where simultaneous feature branches are a thing.
- gcr 10mo agoKeep in mind that you still need to occasionally run jj commands, even in collocated repositories Example: jj snapshots the working copy on any jj command but not any git command It’s a leaky abstraction
- steveklabnik 10mo agoColocation is the default these days, by the way.
- regularfry 10mo agoMy journey was CVS->SVN->darcs->Hg->git. I can thoroughly recommend at least playing around with the others to see what you're missing. Darcs in particular I remember as having a much nicer model than either git or mercurial, but it had a horrible corner case behaviour. Pijul is supposed to fix that, but I haven't tried it yet.
- spit2wind 10mo agoHave you used fossil? If so, what are your thoughts?
- aj_hackman 10mo agoWhat motivated you to move from Mercurial? I'm still using HG for personal projects because it's so easy to self-host on a Raspberry Pi. Just `hg serve -p 8001` or whatever and I'm able to use TortoiseHG from any machine to easily stage commits.
- steveklabnik 10mo agoA lot of us who like jj felt similarly about git. Two pieces of software can both be good :)
- spit2wind 10mo agoThat's interesting. I consider git the worst software ever written! I speak specifically of the UI. Obviously the underlying system works. Yet it's totally within reason that the UI has wasted trillions of money and many person years in lost productivity. Napkin math. It's easy to waste 30 minutes figuring out what the heck is going on after a command didn't work, or explaining what a detached head is to a newbie, or any number of completely avoidable issues were the UI better. Consider the 26.9 million developers in North America[1]. How does one estimate the average salary across NA? Some in SV make 3x that. Elsewhere, it's conceivable that people make considerably less. Let's just say 100k. That's 100,000÷52÷40=48/hr or 24 per half hour. Anyone with git, I think it's safe to say, has had at least one stupid issue that took 30 minutes because of the UI. That's 26.9×24=645,600,000 monies. In my experience and what I've seen of anyone who'a used git, 30 minutes is a gross underestimate. And people use git outside of NA. It's easily trillions in waste. https://en.wikipedia.org/wiki/Software_engineering_demographics https://en.wikipedia.org/wiki/Software_engineering_demograph...
- IshKebab 10mo agoGit is a clever idea with a terrible implementation. Definitely not the best software ever written.
- adastra22 10mo agoFrustratingly, it isn’t an original idea either, and there were better implementations even at the time.
- antonvs 10mo ago> I consider git the best software ever written. You haven't used much software, I take it.