A reader asks:
Ray, I assume you use some type of versioning / revision control system. What do you use? I have tried Subversion (which felt very cumbersome) and Eclipse's automatic change log (which is perfect, but I don't think it works for multiple people) Can you enlighten us as to what you use and why?
There are a couple of answers to this. As a 'corporate' decision, Mindseye uses Microsoft Visual Source Safe. I've used that for my personal projects in the past and it is very, very easy. However, it's also hasn't been updated in years (although I believe the new Visual Studio.Net has an updated version). I've also heard of people having problems with VSS data simply blowing up and not being restorable. At Mindseye, we haven't seen that. Another drawback to VSS is that it doesn't work over the internet unless use a mapped drive over VPN. However - that can be extremely slow. To get around that, we use SourceOffSite by SourceGear. This is basically a VSS wrapper for the net. It works very well. In fact, I typically tell the engineers in my department to use SOS even when they are in the office.
So - that's work. At home, I use Subversion and TortoiseSVN. TortoiseSVN simply adds Explorer integration with Subversion. I will agree with you that SVN isn't the simplest thing to use - at first. Give it some time. To be honest, I've barely scratched the surface of SVN. I simply use it to version my files. It is also handy to help me keep track of what files have changed in my projects. I'll be honest with you. I've never read much of the documentation for SVN. I use the Quick Start guide to setup projects since I always forget the exact process.
I also use the Eclipse built-in versioning system. It is something I would have loved to have seen in the late-great HomeSite+.
Archived Comments
I am also new to Subversion, and I find the Eclipse plugin for Subversion, Subclipse (http://subclipse.tigris.org/), very straightforward and easy to use. Highly recommended.
Version control (I use SVN) is one of those things I wish I had done a LOOONG time ago. Now I'm looking at things like Trac to help with projects even more.
I've been a user of CVS for a long time, and can (mostly) deal with it in my sleep. Recently, I've switched to using Subversion at home and am working on learning it.
"The Book" (http://svnbook.red-bean.com/) seems very good, although I've not read a lot of it. Additionally, Cameron Childress has a great presentation on using Subversion with CF (http://www.sumoc.com/blog/i....
I've also recently come across Trac (http://www.edgewall.com/trac/) which is an integrated SCM/project management system/wiki/issue tracker which uses Subversion for its SCM component. It looks promising, I just need to get a box at home I can install it on.
Went from WinCVS to SVN & TortoiseSVN. I thought it was super easy to set up and use. I don't like every commit in a repository increases the version number for all files in it... but as a snapshot of all files during that particular check-in, its cool.
Ray,
what do you recommend for Mac OS X users? We are currently looking at CVS and Eclipse for our developers, which all are OS X users. What are your recommendations?
Unfortunately I do not yet do dev on a Mac. I have a Mac Mini that I connect to via Synergy and run IRC on, but I don't dev on it. Yet. My next laptop will be Mac for sure though. I -love- it. (Ok, so that is off topic, sorry.)
Ray,
FYI, there's an SVN plugin for Eclipse which will allow you to commit, update, etc. from within the IDE. Works very well for me.
Oliver - I'm aware of it - just forgot to mention it. ;) I set it up once, but didn't bother to do it again when I re-in stalled Eclipse. It does work well, but I had a lot of trouble at first, whereas Tortoise just seemed to work a lot easier.
I have been using <a href="http://www.perforce.com">Perforce</a> for about 4 -5 years now and really love it it works on win/unix/linux/mac/FreeBSD/ and more. It takes some reading to set it up initially, but once you get it set up... It Rocks!
Here's a step by step tutorial to set up and use SVN in less than 30 minutes... it works.
http://blogs.ichameleongrou...
Does anybody have any suggestions for somebody who's never used any source control? We use DW as our primary IDE (and can't change) and I'd like to stay within the IDE as much as possible for all functions.
We have a 5 person development team if that helps. None of us have used any source control before.
We love SubVersion, but we've had a few disasters using TortoiseSVN, which apparently has a few 'quirks' that can kill everything. So have a few others outside our group. So we use Subversion only through the Eclipse plug-in.
Blaine,
I've used Seapine Surround with great success. It has a Dreamweaver plugin (although I haven't actually used it)
http://www.seapine.com/surr...
I've also used Perforce (free for up to two users if memory serves me), but do not know it as well as surround.
Blaine
I have been using Tortoise CVS and Tortoise SVN for a while now and becuase of their windows explorer integration you can use them from "within" pretty much any application.
For instance, I mostly code in Editplus (a notepad replacement) and whenever I need to check-in/out/commit a file I just pop open the "Open File Dialog" and I can right click on the file(s) I need to make a change to, use the Tortoise menu option, and everything happens right there. I then close the open file dialog and go right back to what I was editing.
I'm sure this same method would work fine in Dreamweaver.
As others have said SVN is pretty easy to setup. I would recommend SVN over CVS in the long run becuase it supports a few featuers CVS doesn't (such as file renaming and having that propogate into the version history).
i love SVN + Tourtise, best decision i've made for my company. hehe :P well...besides using CF that is!
We also use SourceOffSite/VSS because it integrates well with Homesite+, which, because it also supports deploying one or more files via RDS or FTP, has been our preferred IDE. But since it's been all but abandoned we have begun to look at CFEclipse. And its support for CVS and Subversion has caused us to begin looking at those solutions. Like a lot of people that have been left in a lurch by MM's akward handling of us CFStudio/Homesite+ folk, we're looking for two fundamental things in our IDE. Integrated source control and remote deployment. It's widely known that MM is working on RDS for CFEclipse and we're basically waiting to see if this support the same sort of deploymnet capabilities that we are used to in Homesite+. Once that piece falls into place I think we'll jump to a CFEclipse and Subversion solution.
I've been using Subversion (SVN) with Eclipse / Dreamweaver and Trac (actually added Windows Trac setup instructions to their Wiki). A basic Subversion install is very easy. What initially overwhelms people is installing other software to support various setups (Python, Apache, etc...) that said, SVN can connect to its repository via HTTP, File://, SVN:// . typically you use HTTP or File.
Personally using Apache and doing HTTP is the best. If anybody has questions or would like a copy of an Apache config file more than happy to help. The listed link for 30min setup is good though is limited. As FYI in Dreamweaver you will used WebDav, and it works, but you lose the commenting feature of SVN that you get in the Eclipse plugin and TortoiseSVN. Also, HIGHLY RECOMMEND having alternate methods of check in/out of SVN. That is install Tortoise as backup to Eclipse plugin and DW Webdav.
You can contact me at kmarino"do not spam"attach.net (ya know what to replace :) )
Mac OS X and Subversion!
Stand alone GUI:
svnX - http://www.lachoseinteracti...
smartSVN - http://www.smartcvs.com (url is not a typo!)
There is a plugin for Dreamweaver (http://www.grafxsoftware.com/) but currently it only works for Windows versions.
Server:
Don't use fink or anyone else's prebuilt packages. Most have issues in some form or another. Do you your own builds of Apache (note you must use Apache2) and Subversion.
Building your own is not as hard as it sounds. There are some good instructions out there and read the readme.txt files with Apache and Subversion. When building your Subversion install, use the '--with-apxs=/pathToApacheAPXS' option.
Make sure your repository is using FSFS (fuzz fuzz) and not the Berkley Database. If you use Berkley, you'll never be able to migrate it to another platform (Windows, Linux, Unix, etc.) if you need to. Subervsion 1.2 uses FSFS as the default (another reason not to use fink or anyone else's prebuilt packages as they are all still 1.1 and Berkley is the default).
For anyone using CVS or SVN and the related tortoise product I would recommend a look at Eclipse because the built in CVS integration is very sweet! CVS is built right into eclipse (that is what we use) and I believe SVN is a plugin. For example you can right click any source file and select 'compare with..' and then choose a previous version from the repository and display a diff of the current file and the previous one on screen. You can visually see and tags or branches that exist on a project, and you can see the change history for your current file showing who committed the change, the date and the comment they entered, in my view this removes the need to clutter the source file itself with this info. SVN I think can be seen as CVS's smarter younger brother. It extends and improves on CVS's solid features.
Does Coldfusion Builder work with MS Visual SourceSafe? If so, any posts/directions anywhere on how to implement it?
You would want to google for a Visual Source Safe Eclipse plugin. I seem to remember one existed.