On Sun, Feb 6, 2011 at 4:20 AM, Maximilian Albert <maximilian.albert@...1439...> wrote:
If I remember correctly, one of the major arguments against git was the lack of support for Windows. A quick Google search seems to suggest that this situation has changed quite a bit, though. If we consider reopening the discussion, I am even willing to start using Windows for the first time in years :) in order to investigate this a bit further.
Windows on git is indeed excellent, thanks to the Git Extensions project:
http://code.google.com/p/gitextensions/
I have been using this tool for the past year, and have always been impressed by its speed and stability. More importantly, learning git is pretty easy when you have a graphical view into the repository to show what is happening.
There is another project for Windows, TortoiseGit, but it does not work particularly well. The only advantage of installing TortoiseGit is that it provides colored status icons in the Explorer view, which Git Extensions does not. I had them both installed for a while, but eventually removed TortoiseGit when I realized that I never actually looked at the status icons anymore. The Git Extensions "Commit" window provides a much better answer to the "What has changed?" question than the status icons even did.
In my typical workflow, I keep the Git Extensions "Browse" window open to keep an eye on the project's history (surprisingly useful, and something I never appreciated when using SVN). I also keep a "Commit" window open to see what changes I've made in the working copy. I code like a madman, throwing down commits recklessly:
* fix somethign * oops, forgot to add file * menu stuff * random cleanup
Being able to code fearlessly is liberating! Revision control should work with the natural creative flow, not interfere with it. Creativity is messy, though, and nobody wants to submit ugly commits like that. When I'm done coding a new feature, I'll use git's interactive rebase feature to go back and clean up the history, producing a few logical, well-formatted patches to submit upstream:
* Fix the loader bug * Add the new menu items
It's hard to describe how much better this workflow is. It's something that can only be experienced.
Several people in this thread want to go back to SVN, but that is not a good idea! I used SVN for years, mainly because TortoiseSVN was so incredibly good. The problem with SVN is that you miss out on all the insanely cool things a good DVCS can do. From what I have seen on this thread and experienced first-hand, Bazaar is not a good DVCS; it combines the complexity of a distributed system with all the limits of SVN. Fortunately, git now offers the power of a really good DVCS with the convenience of a really excellent Windows GUI. If you like SVN because of TortoiseSVN, you'll love git because of Git Extensions.
-William