[PHP] Re: Controlling project version
Stut wrote: I don't like the branching in subversion, it's a lot easier to work with in CVS. That's odd since this is one of the major advantages that Subversion has over CVS (for me at any rate). When you branch or tag in CVS it will sit there and create a copy of every single file in the repository. Depending on the size of your projects this can take a while. Can't agree more with you Stut! I've used CVS and Subversion quite a lot for a number of years. All my live sites are just svn checkouts these days - makes deployment very simple. The branching in Subversion is a gazillion times better than CVS if you take a bit of time really reading the SVN Book (linked earlier). I sat down and read it properly and have a pretty good understanding of the branching and merging procedure and find it very intuitive now. CVS's branching was always a bit of a dark art to me! Personally I used to use CVS until I discovered Subversion, and I've never looked back. However, I am now looking forward and have recently started playing with Git. Git is something of a paradigm shift when compared to traditional source control, but the way it works is starting to make a lot of sense to me. I suggest you include it in your evaluations before deciding on a source control system. Yeah I need to learn Git too for various projects I work on (Xorg and compiz/beryl stuff mainly), but it's maybe not the best utility for website development. With Git, you keep a full copy (or clone) of the RCS on your local machine (this means all the changes you ever made!). This can take up a lot of space for web work with e.g. large graphic files all over the place (although there are ways to compress down/flatten a git repo). With Subversion, you'll pretty much need double the space as it keeps a clean copy of all files in addition to the ones you can work on. With SVN you can do a modicum of offline work - make changes revert to clean copy, see your changes to the repository (svn diff). With CVS you have to be online to do this. With wrappers to SVN like SVK you can also get some of the Git benefits (and drawbacks) with SVN. One other good thing about Subversion is the flexibility of it's hooks. You can setup scripts to automatically deploy your changes to a live environment. It's ace! If you are using an interal Wiki, Ticket system I can thoroughly recommend Trac for this. It has excellent integration with Subversion. Hope that helps. Col -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
Re: [PHP] Re: Controlling project version
Colin Guthrie wrote: Stut wrote: I don't like the branching in subversion, it's a lot easier to work with in CVS. snip lots of interesting stuff about SVN in action... One other good thing about Subversion is the flexibility of it's hooks. You can setup scripts to automatically deploy your changes to a live environment. It's ace! 2 points I'd like to make: 1. I'd be very wary of using an auto deployment script that is triggered upon check in unless the deployment was only to test system. I think that deployment to a production env should have at least one step that requires human intervention - at the very least you have someone to blame if the shit hits the fan.** 2. CVS has wrapper/hook scripts that can also do tasks like this - although I gather that SVN's implementation is friendly more manageable. If you are using an interal Wiki, Ticket system I can thoroughly recommend Trac for this. It has excellent integration with Subversion. Hope that helps. ** 'shit hits the fan' reminds me of something I saw in a LIDL supermarket - they had a ripoff version of 'PomBaer' crisps (potato chips) which was called 'Bears Hit' ... I kid you not! now you too can say with confidence, 'I feel like eating some bear shit' :- -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
Re: [PHP] Re: Controlling project version
Hello, I use CVS in office and home -- Shafiq Rehman (ZCE) http://www.phpgurru.com | http://shafiq.pk Cell: +92 300 423 9385 On 6/18/07, Jochem Maas [EMAIL PROTECTED] wrote: Colin Guthrie wrote: Stut wrote: I don't like the branching in subversion, it's a lot easier to work with in CVS. snip lots of interesting stuff about SVN in action... One other good thing about Subversion is the flexibility of it's hooks. You can setup scripts to automatically deploy your changes to a live environment. It's ace! 2 points I'd like to make: 1. I'd be very wary of using an auto deployment script that is triggered upon check in unless the deployment was only to test system. I think that deployment to a production env should have at least one step that requires human intervention - at the very least you have someone to blame if the shit hits the fan.** 2. CVS has wrapper/hook scripts that can also do tasks like this - although I gather that SVN's implementation is friendly more manageable. If you are using an interal Wiki, Ticket system I can thoroughly recommend Trac for this. It has excellent integration with Subversion. Hope that helps. ** 'shit hits the fan' reminds me of something I saw in a LIDL supermarket - they had a ripoff version of 'PomBaer' crisps (potato chips) which was called 'Bears Hit' ... I kid you not! now you too can say with confidence, 'I feel like eating some bear shit' :- -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
[PHP] Re: Controlling project version
Jochem Maas wrote: Colin Guthrie wrote: One other good thing about Subversion is the flexibility of it's hooks. You can setup scripts to automatically deploy your changes to a live environment. It's ace! 2 points I'd like to make: 1. I'd be very wary of using an auto deployment script that is triggered upon check in unless the deployment was only to test system. I think that deployment to a production env should have at least one step that requires human intervention - at the very least you have someone to blame if the shit hits the fan.** Yeah I should have put a few caveats in there really, seeing as I don't actually do this myself! For what it's worth if I really were to implement this it would only be for a branch where only certain developers have access to. The trunk would be for active dev, it could then be frozen and tested, then merged to the deployment branch! 2. CVS has wrapper/hook scripts that can also do tasks like this - although I gather that SVN's implementation is friendly more manageable. Yeah, I certainly like it better. I've not looked at CVS hooks for years but I'm sure I remember the SVN ones being more flexible... ** 'shit hits the fan' reminds me of something I saw in a LIDL supermarket - they had a ripoff version of 'PomBaer' crisps (potato chips) which was called 'Bears Hit' ... I kid you not! now you too can say with confidence, 'I feel like eating some bear shit' :- I don't think I could ever say that with confidence! Col -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php