Oh, I'm serious.

Don't take my dislike of git to mean that I don't think we should consider the 
proposal to migrate edk2 away from svn to git.  If the consensus is to switch, 
don't let me stand in the way.

What follows is my rant against git.  Please skip if you don't care.

Git has one amazing feature: local commits.  But it is hidden behind a terrible 
interface.  An interface that's so bad, it wears that like a badge of honor.

4.4 million page hits for "what I hate about git".  2.2 million for "what I 
hate about svn".  1.4 million for "what I hate about subversion". 

Wiser people than me have referred to using git as juggling chainsaws.

People pay real money to buy GUI front ends for git, so they avoid the command 
line interface.

In my experience, the default options to the different git commands, and the 
options themselves, are not designed for common usage cases.  It's designed for 
Linus to manage all the branches, patches, and submissions for Linux.

Well, most of us aren't in that kind of workflow.  Even the edk2 project won't 
require that level of functionality from it's VCS.

Here's an example.  You use "git log" to get the entire log.  If you want just 
a single entry, you use "git show".  Yeah, that makes sense.

Another example: why isn't the "--rebase" option the default for "git pull"?  
It seems to me, that for most people, that's what they'd want/expect.

Subversion, for all it's problems, has a clean interface, nearly all of the 
commands have the same options.  Maybe you could even make the argument that it 
has too few options.

With all my complaints about git, I'll still use it.  I'm not stupid, it's a 
useful tool.

But I can dream of a day where the git maintainers have put the same care and 
energy that they have in the backend into the command line interface.

And let's be fair, when you say:

> There's also a distinct correlation between those projects which use
> Subversion, and those projects which make *other* decisions which I find
> to be suboptimal. To the extent that the use of Subversion is a fairly
> good indicator that I'm not likely to like the *code* very much either.


it should be made clear that everything in that quote is subjective.  
Personally, in general, I find that if a project is open source, that's a good 
indicator, to me, that I'm probably not going to like the code very much.  I 
can count on 2 fingers the number of open source projects that I think have 
good, well-designed and thought-out code.  Funny thing, both of those projects 
currently use subversion.  Again, subjective...

Cameron Esfahani
di...@apple.com

"Americans are very skilled at creating a custom meaning from something that's 
mass-produced."

Ann Powers


On Feb 21, 2013, at 4:29 PM, David Woodhouse wrote:

> Seriously, or were you just messing with me?
> 
> I've never heard that before, although I was very serious about avoiding
> projects in Subversion. I'm just too used to having a local git tree and
> using the history of the project to learn the code. When I'm forced to
> deal with Subversion or CVS, I'm dragged back into the 20th century and
> every operation is *slow* as it has to go over the network to the
> server. And if I'm on a plane, it's not just slow — it's broken.
> 
> There's also a distinct correlation between those projects which use
> Subversion, and those projects which make *other* decisions which I find
> to be suboptimal. To the extent that the use of Subversion is a fairly
> good indicator that I'm not likely to like the *code* very much either.
> 
> I'm deadly serious when I say that it puts me off, right from the start.
> Using Subversion certainly makes it much harder for various people to
> collaborate around a central code base, pulling patches from one tree to
> another. That's what a *distributed* version control system is for, and
> that's really what we need to enable and encourage with EDK2.
> 
> So I'd be interested to know if you really meant what you said, and why
> it has that effect. It was also interpreted as the only vote *against*
> the idea of storing EDK2 in git, so I'd like to check if you really
> meant that too.
> 
> Thanks.
> 
> -- 
> dwmw2


------------------------------------------------------------------------------
Everyone hates slow websites. So do we.
Make your web apps faster with AppDynamics
Download AppDynamics Lite for free today:
http://p.sf.net/sfu/appdyn_d2d_feb
_______________________________________________
edk2-devel mailing list
edk2-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/edk2-devel

Reply via email to