On Sun, Nov 25, 2007 at 09:48:27PM +0000, Jakub Narebski wrote: > If you would write git from scratch now, from the beginning, without > concerns for backwards compatibility, what would you change, or what > would you want to have changed? * reset/checkout/revert. The commands to wonderful things, but this UI is a mess for the newcomer. * pull/fetch/push: I would have had pull being what fetch is, and added some --merge option to actually "do the obvious merge". But pull encourage "bad" behavior from the user, and confuses newcomers a lot. * I would have hidden plumbing more, using a really distinguished namespace (stupid example, there are probably better ways, but we could have git-_rev-parse or git-plumbing-rev-parse instead of git-rev-parse) so that it's clear to the user that those are really internal commands, and that he doesn't need to understand them. This is a big issue with git: the list of commands of git is the top of the iceberg from the UI point of view. People _feel_ they are comfortable with a tool if they get say 75% of the UI. I don't say it's true that understanding 75% of the UI makes you a $tool expert, but it's how people feel it. With git, 75% of the commands (and don't get me started with the options ;P) is a _lot_. bzr is way better at that game: there are at least as many commands, but those are completely hidden to the user. Of course having our guts easy to grok and find is a big advantage for the git gurus. But for the newcomer it's a disconcerting. There is probably more things I'd change, but those were the first UI rumblings from me :) -- ·O· Pierre Habouzit ··O madcoder@xxxxxxxxxx OOO http://www.madism.org
Attachment:
pgpsLOUspQBAW.pgp
Description: PGP signature