I'd still suggest git. It's really not that strange unless you want it to be.
The best reason I can give is the ease of branching and merging. Even if you're one developer, it's a great thing to have. You can easily manage parallel streams, such as adding a new feature, stopping, and making a change in your production version, then going back to your feature branch (and pulling in your production changes)
When I started building smallpayroll.ca I used SVN. As I started adding bigger and bigger features I needed to branch. http://ertw.com/blog/2009/08/27/svn-merge/ are the instructions I came up with to figure that out. It was evil. Git is just so much easier in that respect.
I eventually migrated to git and love it. It makes sense. The learning curve was not that bad. It's efficient on my time -- I hardly spend any time thinking about version control.
Now that I've got other people working on it it's easy enough to keep on top of their changes and to share stuff.
Even though git will work between developer workstations without the need of a server, I'd suggest running something like gitolite. It's a breeze to set up and it makes things a bit easier to share because everyone points to one server.
Git will also happily do what you're trying to do in production. You'd just clone a copy and pull changes as needed. Since the cost of branching/merging is near zero, you can choose to deploy from master or another branch, depending on how you want your workflow to be.
Sean
On Fri, Sep 30, 2011 at 5:51 AM, Trevor Cordes trevor@tecnopolis.ca wrote:
Following up to last month's meeting topic, I'm wondering if anyone can help me choose a revision control system for my purposes.
It'll be 2 developers (possibly more later, but always a small number).
We'll share access into 1 box, but I'm thinking we'd prefer a system that lets us check out the complete source tree to our own dev boxes where we can code, and then merge back up changes.
Also, it would be great if we could have a way to check out the current project into a dir that would then serve directly to the web (it's a php project). For example, I'd want a copy to dev on, the other guy would have a copy, and a 3rd copy (possibly older) would be the live web site. When commits are shown to be good, we'd check out into the live site. Hope that makes sense.
I'm thinking CVS or subversion. I'm not sure this small project (maybe 30k lines of code) warrants the strangeness of git. Anything else I'm missing? I'd love to hear the pros/cons. _______________________________________________ Roundtable mailing list Roundtable@muug.mb.ca http://www.muug.mb.ca/mailman/listinfo/roundtable