4 ms·
> What does it say when resolving these problems the easiest thing is to just reclone the remote repo? It says the git works really well because the CLI offers
by zajd 10y ago
> What does it say when resolving these problems the easiest thing is to just reclone the remote repo?
It says the git works really well because the CLI offers a simple way to "undo" any mistakes you've made. The real reason people struggle with git, and I've seen this in many other programs/places is that they rely on discoverability and just randomly try commands until they work.
Git's simplicity is it's downfall. You don't see people wrapping Angular2 in other frameworks to deal with the warts.
There's a reason people are told to look at man pages all the time, the command line is not the place to play "discoverability". There's already plenty of suggestions and help features built into the tool.
> It's crap experience, and all I want to do is code.
- every engineer when first experiencing version control
- bluejekyll 10y ago> It says the git works really well because the CLI offers a simple way to "undo" any mistakes you've made. This let's the design off the hook to easily. Yes, on the one hand this is a great feature, but on the other, you are deleting and restarting your workspace. It's not a great UX, it's just a simple workaround for a bad one. > - every engineer when first experiencing version control no, wrong. git is unique in the amount of information that you need to know just to get started with it.
- zajd 10y ago> no, wrong. git is unique in the amount of information that you need to know just to get started with it. Have you ever worked with a different VCS? How is setting up subversion or CVS any more difficult than going git init git add . git commit -m "initial commit" Yes, truly a monumental barrier to entry to get started. http://vasc.ri.cmu.edu/old_help/Archiving/Cvs/cvs_tutorial.texinfo.html http://vasc.ri.cmu.edu/old_help/Archiving/Cvs/cvs_tutorial.t... If you think git is unique in the amount of information it takes to get started... I pray you work on nothing that even broaches complex.
- bluejekyll 10y ago> Have you ever worked with a different VCS? Yes, I've worked with RCS, CVS, SVN, SourceSafe, Perforce and some others, though know them less well. Git is bar none the best of all (of which I've had experience) the VCS' out there. I would pick it over anything else. The issues I'm pointing out are not because I don't use it, don't understand it, or don't appreciate it. I just believe that it's too complex. If git was literally just the set of commands you listed, that would be great. As a single user experience it's hardly ever an issue. But that doesn't mean that it can't be better! And that's why I like this gitless project (and some of the other similar ones out there), it's trying to create a decent experience that will scale. Also, your example is about creating a new git repo, I find this to be much more rare than getting involved in an already built and multi-member team, which may have all sorts of rules about proper merges or rebases, and such.
- zajd 10y agoIt can be though. That's like saying Linux would be better if they only gave you ls, cat and nano because vi, sed and xargs were too complicated. There is nothing about gitless that provides a decent experience (compared to git) and certainly nothing about gitless that has anything to do with operating at "scale". The truth is commands like filter-branch, rebase, cherry-pick, etc. which are notoriously difficult to use... you don't even have to use them. I'm not saying the git experience can't get better, but the way forward is to modify the existing tools and contribute to the project, not make git wrapper number 84 that does nothing special.
- fail2fail2ban 10y ago> That's like saying Linux would be better if they only gave you ls, cat and nano because vi, sed and xargs were too complicated. That's a rather condescending thing to say and not accurate or supportive of the view of git you seem to hold. > The truth is commands like filter-branch, rebase, cherry-pick, etc. which are notoriously difficult to use... you don't even have to use them. Until someone on the team _does_ use them and then things can become messed up in ways it takes a git expert to figure out how to fix. I've used git for several years and had never even come across filter-branch, I'd have to chase down the git docs to see what it even does. I never had to filter anything with CVS, Continuus, Perforce, SourceSafe or Subversion.