[PHP] Re: Controlling project version

2007-06-18 Thread Colin Guthrie
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

2007-06-18 Thread Jochem Maas
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

2007-06-18 Thread Shafiq Rehman

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

2007-06-18 Thread Colin Guthrie
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