I'm curious what SCM applications people are using for their sprawling enterprise level web applications. We recently got a perforce license and while I like it much more than CVS and subversion, I still feel like web development is taking a back seat to the more traditional c++ style devs in the mind of the perforce developers. Sure there are some nifty add ons which allow you to better use SCM for web apps but why is it always a plug-in or 3rd party tool? Also most of the SCM documentation and literature deals with environments which are much more desktop oriented than web.
We here use CVS and/or Subversion depending on the project (and how many remote developers are involved).
I personally like Subversion over CVS -- however I'm constantly complaining at Zend to include Subversion support in Studio, it only has CVS support.
SCM applications are for the management of code, they really don't (or shouldn't) care about what the code is being used for, because they deal in source files. Unless you are looking to manage binary files, almost any source management system will work for web projects.
Are you looking for some specific functionality? Like publishing files? Package + Deploy? I know a lot of people have custom scripts that do this for their web projects, which they then tie into CVS/Subversion or whatever.
In order to understand recursion, one must first understand recursion.
If you feel like it, you can read my blog
Signal > Noise
It's not the code thats the problem its more of the sandbox <--> depot relationship that seems strained. examples of some of the problems we've been dealing with:
we have 1 secure connection to a database that runs off of our dev server. We need that connection to do development. It seems a little scary to make shares on that server for everyone's sandbox. so what we do is run a script to mirror the data on the secure db to a local db and do dev off of that. This is awkward because we are always fighting to keep our mirror in sync.
We host 3rd party HTML pages along with the main bulk of the application. These pages are integrated into our final codeline pretty tightly but we have no control over them in the SCM. getting the "developers" of these pages to use SCM is out of the question (we're talking dreamweaver jockeys here). So we end up going into their html to fix links that are broken because they are out of sync with our development.
Ive been getting ready to implement a tool that will sync the dev server with the latest version on every submit via FTP with a trigger. I am hoping this will solve some of our problems but I was wondering how others reconcile the sandbox/depot system with the client/server model which web development requires.