Live data from Hacker News

Gitless: a version control system

gitless.com

211–220 of 390 posts

Re: Gitless: a version control system

#211
post #2

See also discussion about the Gitless paper: "Purposes, Concepts, Misfits, and a Redesign of Git" https://news.ycombinator.com/item?id=12612333 (1 day ago, 106 comments)

And it hits the most important point of: Gitless tries to do away with the staging area, thus completely misunderstands Git.

I've been using git for a few years, and often wished I could eliminate the staging area. It's an extra step for every commit, and creates extra complexity for no benefit I've been able to see. I haven't seen a practical example of a use case that's improved by having separate add and commit.

By your statement, I also completely misunderstand git. That's entirely possible, but if git is so hard to understand that daily use for years doesn't lead to understanding, maybe it's ok to misunderstand git.

Re: Gitless: a version control system

#212
post #102

Git is, like many professional tools, something you simply got to learn. But like with many professinal tools, you don't need to know everything to get to work. I don't know all Photoshop or Ableton Live features, but I can improve my photos or create songs non the less. With these commands you can already start your own repo and work on it locally: git init // crate new repo git status // show which files are change…

> Git is, like many professional tools, something you simply got to learn. No. Why do people think "professional" has to mean "poorly designed"? But then, the rest of your post seems to miss the point of this thing entirely. You go on to say that you basically only need 10 commands...which is pretty much the insight that lead to Gitless in the first place.

Why would someone write a tool for 10 commands?!

Re: Gitless: a version control system

#213
post #102

Git is, like many professional tools, something you simply got to learn. But like with many professinal tools, you don't need to know everything to get to work. I don't know all Photoshop or Ableton Live features, but I can improve my photos or create songs non the less. With these commands you can already start your own repo and work on it locally: git init // crate new repo git status // show which files are change…

Actually I miss using Mercurial and most customers that I work with, refuse to move beyond Subversion into Git.

Those that do move, just use Git workflows as if it was Subversion.

Re: Gitless: a version control system

#214
post #174

Earlier quoted context omitted.

I am not talking about a toolset. I'm talking about how I believe you have a "I'm right, you're stupid and wrong" attitude. So I'm not disputing your opinion about Gitless, I'm criticizing how you presented it. I don't think the sentiment is ridiculous, because I think it's correct; clearly if you write it off as ridiculous then we're just talking past each other. Similarly, I don't think I am labeling you in a negat…

>I'm not talking about a toolset. Then leave the thread, because that's what this thread is about. > I'm talking about how I believe you have a "I'm right, you're stupid and wrong" attitude. Incredibly misplaced belief. >So I'm not disputing your opinion about Gitless, I'm criticizing how you presented it. And you felt the need to completely exempt yourself from this criticism. Can't say I'm shocked at this point. >I…

> Then leave the thread

> you're both a hypocrite and a troll

> I'm not going to respond to you anymore past this

Feedback from the outside: ajkjk strikes me as someone making reasonable points and who is capable of productive discussion. You are coming across as unnecessarily arrogant and prickly, and thus someone with whom it's best to avoid discussion.

Maybe you are an extremely fluent but non-native speaker of English and your idioms aren't coming across as you want? Or maybe you just prefer a more "aggressive" approach than we are comfortable with?

In any case, independent of the technical merit of your arguments, you might reconsider ajkjk's criticism, as I think there are many others (like me) who agree with it.

Re: Gitless: a version control system

#215
post #7

To me the really bad thing about git is its command-line interface. It has extremely verbose messages (writes out a lot of stuff that you don't need to know) and common use cases often requires multiple steps (ie. add, commit, push if you just want to send a change from your work machine a github repository). Compare this to subversion which is much less verbose, and in general just have one operation pr. use case.

Yea the Git CLI is a giant pile of steaming shit which is probably why there are plethora of visual tools for working with Git instead.

Re: Gitless: a version control system

#216
post #102

Git is, like many professional tools, something you simply got to learn. But like with many professinal tools, you don't need to know everything to get to work. I don't know all Photoshop or Ableton Live features, but I can improve my photos or create songs non the less. With these commands you can already start your own repo and work on it locally: git init // crate new repo git status // show which files are change…

> Git is, like many professional tools, something you simply got to learn. No. Why do people think "professional" has to mean "poorly designed"? But then, the rest of your post seems to miss the point of this thing entirely. You go on to say that you basically only need 10 commands...which is pretty much the insight that lead to Gitless in the first place.

"Professional" doesn't mean "Poorly designed". It means "designed so that people with lots of domain knowledge and experience with the tool find that it never gets in their way."

In that sense, git is a professional tool. If you know everything about it, it doesn't get in your way. The problem is when you don't know everything about it..

Re: Gitless: a version control system

#217
post #214

Earlier quoted context omitted.

>I'm not talking about a toolset. Then leave the thread, because that's what this thread is about. > I'm talking about how I believe you have a "I'm right, you're stupid and wrong" attitude. Incredibly misplaced belief. >So I'm not disputing your opinion about Gitless, I'm criticizing how you presented it. And you felt the need to completely exempt yourself from this criticism. Can't say I'm shocked at this point. >I…

> Then leave the thread > you're both a hypocrite and a troll > I'm not going to respond to you anymore past this Feedback from the outside: ajkjk strikes me as someone making reasonable points and who is capable of productive discussion. You are coming across as unnecessarily arrogant and prickly, and thus someone with whom it's best to avoid discussion. Maybe you are an extremely fluent but non-native speaker of En…

You consider his first post to be productive? You must be dreaming.

> ajkjk strikes me as someone making reasonable points

He is not making any point, so it's weird that you would say that. He hypocritically stated I was coming off as arrogant. Fair game, even though I really don't see how it remotely comes off that way, but you can't exempt yourself from your own criticism in a post that does not constructively further the conversation in any way.

> You are coming across as unnecessarily arrogant and prickly, and thus someone with whom it's best to avoid discussion.

Apparently so, but I don't see it. I gave my opinion, and that was it.

>you might reconsider ajkjk's criticism

I most definitely will not, as this is a technical discussion. I'm not going to muddle the waters. Nothing I said was needlessly "arrogant" (at what point was puffing myself up?) -- and if it was prickly then I'd question why it was chosen to focus on that aspect of it instead of directly countering what was stated.

When discussing technical matters: leave your ego at the door. At every turn I gave him a chance to actually discuss something and he refused to do so. The fact that you decided to continue this non-sense is mind-boggling to me. What's the point?

Re: Gitless: a version control system

#218
post #93
post #30

Very cool. The idea which I liked most, is the ability to switch between branches, even though you still have uncommitted changes. With git, I'm forced to either make an extraneous commit, just to enable branch switching, or stash all my changes into a stack which I may later forget all about. Both of the solutions above are really cumbersome and prevent easy context switching. The only feature I noticed missing, is…

> With git, I'm forced to either make an extraneous commit... You only need to commit or stash if there are conflicts, and many time there aren't, so you can first try to switch branches without stashing. > The only feature I noticed missing, is the ability to stash changes. I use this most often to move changes from one branch to another branch I started a big ol thread on stash yesterday, but there are a bunch of s…

I wish git would deprecate stash and replace it with something like this, that doesn't have any magic and just uses the existing branch system.

It would generate a new temp branch every time using a counter system, e.g. "stash1" "stash2", so all the temp branches effectively form a stack. The stash popping behaviour can still be supported this way (popping would cherry-pick and delete the highest numbered branch).

It would be easy enough to script as a side project too.

Re: Gitless: a version control system

#219
post #184

Earlier quoted context omitted.

How are they forgetting merging, remotes, etc? The commands are literally on the front page. The only thing it doesn't have is a staging area, which is a conscious decision that I happen to agree with.

I think you missed that weberc2 replied to a comment listing 10 git commands "that are all you need to get started", not to the top level article.

Ah, thanks. The mobile app view wasn't clear on that.

Re: Gitless: a version control system

#220
post #198
post #102

Git is, like many professional tools, something you simply got to learn. But like with many professinal tools, you don't need to know everything to get to work. I don't know all Photoshop or Ableton Live features, but I can improve my photos or create songs non the less. With these commands you can already start your own repo and work on it locally: git init // crate new repo git status // show which files are change…

git checkout // throw away all changes since the last commit (one file) git reset --hard // throw away all changes since the last commit (all files) This is a perfect illustration of why git needs a better UI. Two different commands to do exactly the same thing, with the only difference being that one is for one file and the other is for many files? If you tried to design a hard-to-use UI you could hardly do better t…

But they don't do "exactly the same thing, with the only difference being..." unless you ignore the index, which is one of the extremely powerful abstractions that sets git apart. Sure, git could expose a simplified lowest-common-denominator interface that plasters over its differences, but the same interface would (and gitless does) plaster over its strengths and encourage people not to learn them.

I agree with TFA: this isn't a UI issue, it's an abstraction issue. Several of git's abstractions only make cost/benefit sense in a distributed environment. Unbundling the cost of learning dVCS abstractions would make git a better fit for the Cathedral and a worse fit for the Bazaar. This might be what you want, but you should at least be able to understand why other people do not want it.

Post reply on HN