The solution to our problem should be a version control server, like Subversion. If we were all using Visual Studio proper, we could even use an add-on called Ankh to integrate Subversion with the IDE. (I personally am using Visual Studio Express at home, so that won't work, anyway.)
The issue with this solution lies in where to store the repository - the central "original" from which all copies are checked out and to which all updates are committed. Subversion (and its client applications like TortoiseSVN and AnkhSVN) offers five options:
- local file
- http (on an Apache server)
- https (same as above, but secure)
- svn (on an SVN-enabled Linux server)
- ssh+svn (same as above, but secure)
This being the case, how will we manage version control?
The only option left open to us is 1, the local file. Local where? Well, since this is my idea and I'm working on my home machine, local here. And then everyone else will need to send me their versions for periodic commits and updates. This is not optimal, because it turns the engineering problem (where the tools would force the appropriate action to ensure correct results) to a personnel problem (where with every additional worker, the chances of something grow wrong increase). Whip cracking might be in it.
Life's not fair. But we can get by.
What about a free solution such as sourcefourge, google code, or codeplex?
ReplyDeleteAs far as I know, these are all for open-source code. Our project may be amateur, but it's not open source... our client signed us on. The code is his.
ReplyDeleteUse a distributed version control system, Mercurial or the like, and share changes as patch files.
ReplyDeleteYou can still have a master repository if you like, and every developer (including you) can have a clone as a work-copy.
Take a look at [http://betterexplained.com/articles/intro-to-distributed-version-control-illustrated/] for a friendly introduction to DVCS.
If you have a background in centralized VCS, you must really read this one also: [http://www.joelonsoftware.com/items/2010/03/17.html]