I think I had previously decided on Bazaar. I was really worried about Git on Windows, and Git's main features "Cheap Local Branches" and "The Staging Area" didn't impress me at the time. Bazaar has some really nice support for implementing different sharing schemes on top of the distributed model.
But now, I think Git is the way to go.
In my day-to-day work, I have at least three "local branches" in svn. They are:
- the working trunk - attached to the trunk, with all the changes I am thinking about making
- a clean trunk - this is my "Staging Area" where I copy changes in before commit
- an old copy of the trunk - for comparing really old revs (because history is not available offline in svn)
- a personal branch - for long term projects to make major changes
- a release branch - for when we are doing a public release
I really overlooked the Staging Area.
My concern was that I wouldn't be able to use it, because I need to test any changes before pushing anyway. Of course, I realized that I just need to push to my clean area, test there, then push to the "main" repo (as much as any repo is main in a distributed SCM).
No comments:
Post a Comment