I am curious to find out if there are any Change Management Systems available for Linux (free of course). I'd like to be able to make changes to common files I use but have the ability to "backout" those changes (version control). I have written some various shell scripts that do this in a very simple manner (cp existing file -> append date -> place in a different directory -> diff old/new and save that output) and perhaps that's enough but was hoping folks on here would know of same actual CMS tools out there.
Thanks - Andy
Did some research and found out about RCS:
Looks simple and easy to implement.
answered 16 Jun '10, 20:14
If you mess around with files a lot, git is perfect for you.
In addition to solving the problems you mentioned, it is very easy to set up (without a server or anything) and offers easy and fast trial and error functionality (branch, diff).
It's hard to put all that git does in a few words, so you best take a look for yourself: git
In addition to code versioning, I often use git to manage various service configurations (samba, bacula, ...).
answered 17 Jun '10, 17:46
While you can use some of the traditional RCS tools (git, bzr, svn) for this, I'd recommend something like puppet, chef or Cfengine.
answered 16 Jun '10, 21:15
Option 1: Git (version control system)
I use git in my music production process. My scoring, recording/sequencing softwares provide no version control system. So, I initiate git in my work folder, and commit changes after each stage.
Tried SVN before moving to git. Git works reasonably well with binary data too.
Option 2: unison (backup/file sync)
Unison synchronizes folders. You can configure it to save a copy of a file, that has been modified, to some 'extra backups' folder before replacing the actual backup path. (Of course, you should configure it to one-way sync for backup purposes)
Instead of a single 'folder' whose entire content has to be backed-up, we can mention a large folder (like /home) and filter out particular files/folders under that to backup. This is very useful if the files you access/change often are scattered.
ps: CMS = Content Management System (Wordpress, Zoomla etc.)
answered 17 Jun '10, 19:05
If you prefer a GUI front end, check out RabbitVCS (http://www.rabbitvcs.org/). While it currently handles subversion, It will soon have support for GIT (v 0.14), CVS (v0.15). It's based upon the Nautilus file manager. Hence it will work with most GTK implementations (including Ubuntu, Debian and Fedora.) Depending upon demand and funding, they will pick up other version control systems in future releases.
It looks promising for those who grew up after command lines went out of style:) And it seems quite actively supported at the moment.
answered 18 Jun '10, 16:08
I like bzr, and a newer offering is Mercurial. The latter has a 2-stage repository scheme, which may be useful in some situations, such as a developer team. See http://hginit.com/ for a short introduction (an possibly and introduction to a good writer as well) ... cheers, makyo
Cfengine, Mercurial, and of course, Git, have already been mentioned, but there is also a very straight forward tool inherent in UNIX called rcs that has been around for prolly 20 years, kinda like sc has been around (not sure if it means SuperCalc, but it's a down and dirty spreadsheet included in most Linux distros - just like rcs).
just man rcs and you've got the simplest, quickest, and one of the most little known revision control systems at your fingertips for quickly maintaining various versions of little scripts or documents you're often playing with and need to roll back to or reference occasionally
just "man rcs"
hey, for that matter, why not "man sc" while you're at it?
Tiny tools that pack a big usefulness :)
I hope that helps ;)
answered 03 Jul '10, 01:59
CVS can be used very simply. It is also powerful enough to support programming teams and multiple development branches.
Regards, Bill Drissel
answered 18 Jul '10, 02:09