Date: Wed, 12 Sep 2007 00:10:02 +0300 From: Giorgos Keramidas <keramida@ceid.upatras.gr> To: agus.262@gmail.com Cc: freebsd-questions@freebsd.org Subject: Re: Which versioning system is the simplest to use?? Message-ID: <20070911211002.GB1698@kobe.laptop> In-Reply-To: <fda61bb50709111141h3dc9ae6dxc011c485eea83784@mail.gmail.com> References: <fda61bb50709111141h3dc9ae6dxc011c485eea83784@mail.gmail.com>
next in thread | previous in thread | raw e-mail | index | archive | help
On 2007-09-11 15:41, Agus <agus.262@gmail.com> wrote: > Hi List, > I am doing a little bit of security and log watching with sec.pl and > was trying to mantain de secconf files organized... > So whenever one is changed it keeps track of the change and can rollback.... > > O that is what i am going to use de versioning sytem for... > > I will appreciate your tips very much.... This is a question that borders a "religious issue". You are going to get at least as many answers as the people you ask, since there are people (like me) who like tinkering with version control and revision control systems and have at least a couple of "preferred" ones, depending on the task. There are at least two different version-control systems in the "base system" of FreeBSD: RCS A file-based system, which doesn't really require any complicated server setup, rcs(1) can cover many of the simple needs one may have when tracking changes to a bunch of files in a directory. CVS A file-based system too, but this one sits on top of the basic rcs(1) functionality and implements several features which are more advanced, i.e. tagging entire file trees, branching entire file trees, 'modules' as file collections, it has a networked access method, and can be tunnelled through rsh(1) or ssh(1) for remote access to the same centralized 'repository' of files. The RCS and CVS systems have started showing their age a bit, but they are trusted good old companions, there is a _GREAT_ deal of printed and online documentation for their setup and every day operation, there are documented 'hook' mechanisms to extend them (the FreeBSD Project uses its own collection of CVS repository management scripts, for example), and in general they are fairly good choises for small to medium-sized projects. If you are interested for more _modern_ systems, there are several of those in the FreeBSD Ports collection too. Subversion, Git, Mercurial, Darcs and Bazaar are just a few to name. Every one of those offers its own set of features, it supports several development models, and can be extended in its own special way. Many of them (actually _all_ those I mentioned above) are based on "changesets" instead of per-file history, so it is a lot easier to branch experimental versions of your source tree, or pull out a single commit which affects multiple files in one go. At least some of them support even more advanced features like "merge tracking". Some of the newer ones are even "distributed", which means they support offline work, clean and fast branching, merging from any "related" tree, and other cool stuff. I'm personally a fan of this category, because they let me work almost anywhere and in any way I like with my source trees, but that's more a personal preference than a panakea. There are a ton of features, and several dozens of systems from which you can choose. It all really boils down to... How much time do you have to experiment a bit with the various alternatives which FreeBSD supports? > have a nice day/night... Thank you sir, have a nice one too :)
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20070911211002.GB1698>