git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: [PATCH 3/3] Teach "git branch" about --new-workdir

From
Linus Torvalds <torvalds@linux-foundation.org>
Date
Jul 25, 2007, 20:40 UTC
Message-ID
<alpine.LFD.0.999.0707251327390.3607@woody.linux-foundation.org>
In-Reply-To
<200707251205.48235.andyparkins@gmail.com>
On Wed, 25 Jul 2007, Andy Parkins wrote:
Show 7 quoted lines
> 
> I don't disagree with you at all - it is completely ridiculous for Windows 
> users to moan about lack of Windows support without contributing any help.  
> However, I think there is a good reason.
> 
> I think it's a chicken and egg problem.  The only reason I started making 
> (small) contributions to git was because I was using it already.
I think this is 100% true, and worth repeating.

A lot of people seem to think that open source is about having lots of people help with the project, and that development happens much faster that way.

But what people often seem to miss is that pretty much all projects didn't start out "open source". They *all* started out as somebodys personal project (where "somebody" could be a small group, not just an individual, of course), and while maybe the _license_ was open source from the beginning, you cannot get away from the fact that in order to actually be developed as open source, in the end some *individual* has to just do it.

No project ever gets useful help until it's already useful. Being open source doesn't get you past that hump - it only helps you *after* you've already gotten past it.

Now, admittedly, I think one issue with Windows is that the "hump" is simply much bigger. The initial cost (not necessarily in money, but in effort) of getting involved in a development process is just a *lot* higher for Windows users than it is for just about any UNIX.

If you're on some unix platform, the cost of getting involved is basically that the project should already work to some degree, and then there may be some relatively *trivial* issues with making sure that you've got a compiler installed and the basic libraries. But that's really quite easy on just about any UNIX, to the point that most people don't even have to think about it.

In contrast, on Windows that "hump" is a whole lot harder. You don't just have to have a compiler, you have to have some *specific* compiler, because under Windows, they all have different development environments, and few projects support them all.

So you have a double whammy: not only are people doing less development on Windows to start with (so the project itself is likely not as usable), but something as totally *trivial* as getting a simple C development environment isn't even trivial. And git makes it worse by requiring a very odd component (in Windows terms): the shell.

I really hope we'll get the the C rewrite merged soon. Especially the big ones, ie commit / merge / am / clone / fetch. Those are the complex ones that it's hard to get excited about when they don't work. Once those work well, you could probably use git pretty completely even without shell, even if you'd be missing a few features - and those features would now be small enough that a relative beginner can cut their teeth on them.

The good news seems to be that most of those big scripts already exist in a C version, so it's not like it's some utopian dream any more.

But getting a development environment is still much more painful under Windows than just about anywhere else.

			Linus
Previous: Johannes SchindelinNext: Christian MICHON
Message 44 of 46 in “Teach "git branch" about --new-workdir”
  1. 3/3 Teach "git branch" about --new-workdirJohannes Schindelin, Jul 22, 2007
  2. Daniel BarkalowJul 22, 2007
  3. Johannes SchindelinJul 22, 2007
  4. Julian PhillipsJul 22, 2007
  5. Johannes SchindelinJul 22, 2007
  6. Julian PhillipsJul 22, 2007
  7. Johannes SchindelinJul 22, 2007
  8. Julian PhillipsJul 22, 2007
  9. Jakub NarebskiJul 22, 2007
  10. Johannes SchindelinJul 22, 2007
  11. Johannes SchindelinJul 22, 2007
  12. Shawn O. PearceJul 23, 2007
  13. Junio C HamanoJul 23, 2007
  14. Shawn O. PearceJul 23, 2007
  15. Shawn O. PearceJul 23, 2007
  16. Johannes SchindelinJul 23, 2007
  17. Johannes SchindelinJul 23, 2007
  18. Marius Storm-OlsenJul 24, 2007
  19. Johannes SchindelinJul 24, 2007
  20. Junio C HamanoJul 24, 2007
  21. Johannes SchindelinJul 24, 2007
  22. Marius Storm-OlsenJul 24, 2007
  23. Julian PhillipsJul 24, 2007
  24. Marius Storm-OlsenJul 24, 2007
  25. Johannes SchindelinJul 24, 2007
  26. Josef WeidendorferJul 24, 2007
  27. Johannes SchindelinJul 24, 2007
  28. Josef WeidendorferJul 24, 2007
  29. Jakub NarebskiJul 25, 2007
  30. Johannes SchindelinJul 24, 2007
  31. Marius Storm-OlsenJul 24, 2007
  32. Marius Storm-OlsenJul 24, 2007
  33. Johannes SchindelinJul 24, 2007
  34. Marius Storm-OlsenJul 24, 2007
  35. Johannes SchindelinJul 24, 2007
  36. Marius Storm-OlsenJul 24, 2007
  37. Alex RiesenJul 24, 2007
  38. Marius Storm-OlsenJul 25, 2007
  39. Johannes SchindelinJul 25, 2007
  40. Steven GrimmJul 25, 2007
  41. Andy ParkinsJul 25, 2007
  42. Marius Storm-OlsenJul 25, 2007
  43. Johannes SchindelinJul 25, 2007
  44. Linus TorvaldsJul 25, 2007
  45. Christian MICHONJul 26, 2007
  46. Julian PhillipsJul 23, 2007

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.