Re: [PHP] Controlling project version
Chris wrote: Miguel Vaz wrote: Hi, I recently finished a project for our local city hall and some people asked me to do some version control for future updates. They suggested the use of a linux script called Recursive Version Control, which i never even heard anything about. Sure you don't mean RCS ? http://www.gnu.org/software/rcs/ Never used it. Sure you have, you just don't realise it. What do you guys/girls use out there? Subversion? CVS? Is there a point in using some linux script versus a proper program? You won't get any sort of revision control with just a script, you need a proper program like either cvs or subversion or one of the others (some are commercial - eg bitkeeper). I fail to see the difference between just a script and a proper program, but regardless... I use cvs at work (because it was more mature at the time I set it up) and subversion at home. CVS wraps RCS, so you have used it! They are close enough that what you know in one will work in the other for the most part. Subversion has a few more features (eg renaming a folder in the repository). There's a little more to it than that. In CVS folders are not tracked at all. In Subversion they are treated like files, and therefore have their own history. One of the major effects of this is that you can have empty folders in your repository - something I usually have in most of my projects, but that CVS insisted on having a file inside before it would retain the fact the folder exists. 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. Subversion can create a tag or a branch instantly regardless of the size of the repository. It does this by using a mechanism akin to pointers. It doesn't actually create a copy of the files until you commit a change in a tag or a branch. 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. http://git.or.cz/ -Stut -- http://stut.net/ -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
Re: [PHP] Controlling project version
I fail to see the difference between just a script and a proper program, but regardless... I think of a script as something like a firewall script - where-as cvs/subversion have a bunch of different commands to do different things. All interpretation I guess :P I use cvs at work (because it was more mature at the time I set it up) and subversion at home. CVS wraps RCS, so you have used it! OK I haven't used RCS *directly* - Happy? ;) 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. Maybe it's just the whole structure thing I don't understand: http://svnbook.red-bean.com/nightly/en/svn.tour.importing.html#svn.tour.importing.layout If you already have your project in subversion, how do you branch it? Compare that to: cvs tag -b branch name module_name ;) -- Postgresql php tutorials http://www.designmagick.com/ -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
Re: [PHP] Controlling project version
Chris wrote: 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. Maybe it's just the whole structure thing I don't understand: http://svnbook.red-bean.com/nightly/en/svn.tour.importing.html#svn.tour.importing.layout If you already have your project in subversion, how do you branch it? Compare that to: cvs tag -b branch name module_name ;) Ok, this is where you need to understand the fundamental difference between how CVS and Subversion work. For CVS branching and tagging are operations in themselves. In Subversion they're just copies. How you layout your repository is up to you, but the recommended layout is usually used because you need somewhere in the repository to put branches and tags. As for how to do it... think of it as simply copying files and it should make sense... svn copy svn+ssh://server/repos/trunk svn+ssh://server/repos/tags/mytag So, that wasn't too hard was it? It's different to CVS, and it does require that you think about your repositories in a slightly different way, but to me it's a lot more flexible and it's definitely more efficient than CVS. But it's all down to personal choice. -Stut -- http://stut.net/ -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
Re: [PHP] Controlling project version
Stut wrote: Chris wrote: 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. Maybe it's just the whole structure thing I don't understand: http://svnbook.red-bean.com/nightly/en/svn.tour.importing.html#svn.tour.importing.layout If you already have your project in subversion, how do you branch it? Compare that to: cvs tag -b branch name module_name ;) Ok, this is where you need to understand the fundamental difference between how CVS and Subversion work. For CVS branching and tagging are operations in themselves. In Subversion they're just copies. How you layout your repository is up to you, but the recommended layout is usually used because you need somewhere in the repository to put branches and tags. As for how to do it... think of it as simply copying files and it should make sense... svn copy svn+ssh://server/repos/trunk svn+ssh://server/repos/tags/mytag That does make sense - it's just a pain to re-do a repository if you didn't set it up properly in the first place (which I never thought I'd have to do for a version control system). Anyway thanks for the tip ;) -- Postgresql php tutorials http://www.designmagick.com/ -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
Re: [PHP] Controlling project version
svn is what I prefer. clive -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
Re: [PHP] Controlling project version
On Monday 18 June 2007, Chris wrote: Compare that to: cvs tag -b branch name module_name ;) Ok, this is where you need to understand the fundamental difference between how CVS and Subversion work. For CVS branching and tagging are operations in themselves. In Subversion they're just copies. How you layout your repository is up to you, but the recommended layout is usually used because you need somewhere in the repository to put branches and tags. As for how to do it... think of it as simply copying files and it should make sense... svn copy svn+ssh://server/repos/trunk svn+ssh://server/repos/tags/mytag That does make sense - it's just a pain to re-do a repository if you didn't set it up properly in the first place (which I never thought I'd have to do for a version control system). Anyway thanks for the tip ;) SVN's architecture for branching and tagging is a lot nicer. CVS's UI primitives for branching and tagging are a lot nicer. I think SVN is easier to fix in that regard than CVS is. I'm rather curious why some stock hook scripts don't exist to do that for you already. -- Larry Garfield AIM: LOLG42 [EMAIL PROTECTED] ICQ: 6817012 If nature has made any one thing less susceptible than all others of exclusive property, it is the action of the thinking power called an idea, which an individual may exclusively possess as long as he keeps it to himself; but the moment it is divulged, it forces itself into the possession of every one, and the receiver cannot dispossess himself of it. -- Thomas Jefferson -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
Re: [PHP] Controlling project version
Never heard of RVC. I use subversion both at work and for my personal stuff. Fairly easy to setup once you understand it, fairly easy to use, good command line and GUI tools to suit your preference. On Sunday 17 June 2007, Miguel Vaz wrote: Hi, I recently finished a project for our local city hall and some people asked me to do some version control for future updates. They suggested the use of a linux script called Recursive Version Control, which i never even heard anything about. What do you guys/girls use out there? Subversion? CVS? Is there a point in using some linux script versus a proper program? Would really appreciate some input on this. On everything works, etc. Thanks. Miguel Vaz -- Larry Garfield AIM: LOLG42 [EMAIL PROTECTED] ICQ: 6817012 If nature has made any one thing less susceptible than all others of exclusive property, it is the action of the thinking power called an idea, which an individual may exclusively possess as long as he keeps it to himself; but the moment it is divulged, it forces itself into the possession of every one, and the receiver cannot dispossess himself of it. -- Thomas Jefferson -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
Re: [PHP] Controlling project version
Miguel Vaz wrote: Hi, I recently finished a project for our local city hall and some people asked me to do some version control for future updates. They suggested the use of a linux script called Recursive Version Control, which i never even heard anything about. What do you guys/girls use out there? Subversion? CVS? Is there a point in using some linux script versus a proper program? Would really appreciate some input on this. On everything works, etc. Thanks. Miguel Vaz well, since google know nothing of this linux script, I would be less likely to use it versus a well know prog like CVS or Subversion. I prefer CVS. Since you are working with a completed project, for the most part, I would recommend CVS. One major pitfall that could arise is if you needed to change a directory name. It isn't too easy to do this with CVS, but it is fairly easy with Subversion. Others may have different opinions about the two mentioned version control system, or suggest a different approach all together. But CVS is what I use, and it seems to work fine in all my projects just fine. Jim -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
Re: [PHP] Controlling project version
Miguel Vaz wrote: Hi, I recently finished a project for our local city hall and some people asked me to do some version control for future updates. They suggested the use of a linux script called Recursive Version Control, which i never even heard anything about. Sure you don't mean RCS ? http://www.gnu.org/software/rcs/ Never used it. What do you guys/girls use out there? Subversion? CVS? Is there a point in using some linux script versus a proper program? You won't get any sort of revision control with just a script, you need a proper program like either cvs or subversion or one of the others (some are commercial - eg bitkeeper). I use cvs at work (because it was more mature at the time I set it up) and subversion at home. They are close enough that what you know in one will work in the other for the most part. Subversion has a few more features (eg renaming a folder in the repository). I don't like the branching in subversion, it's a lot easier to work with in CVS. -- Postgresql php tutorials http://www.designmagick.com/ -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php