Date: Fri, 1 Jun 2007 15:27:57 -0400 From: "Maxim Khitrov" <mkhitrov@gmail.com> To: freebsd-questions@freebsd.org Subject: Recommendations for config file revision control Message-ID: <26ddd1750706011227g224eaa1dh93233400c704595e@mail.gmail.com>
next in thread | raw e-mail | index | archive | help
Hi everyone, I'm currently setting up a new server, and I'd like to keep track of all changes made to various config files (in /etc, /usr/local/etc, and a few other places perhaps). My first thought was to setup a subversion server which would contain the partial directory structure that matches that of the server's starting at /. It would contain versioned copies of all the configuration files that I want to keep track of in their appropriate locations. What I would do then is write a hook for subversion that will issue an automatic export command (don't want .svn directories everywhere) every time a commit is made to the repository. So to edit some configuration file I would first checkout a working copy of the repository to some other location, make the change and commit it. The server would be automatically updated with the new file and I would be able to keep track of every change. This seems like a decent strategy to me, but before I go off writing the scripts and setting up the server I wanted to ask what you guys might be using to keep track of the server configuration (backups don't count)? Is there an easier way of doing the same thing, for example, eliminating the need to do a working copy checkout first? Perhaps a way to monitor certain files for changes, and automatically commit them every time a change is saved. I'd be glad to hear any suggestions you might have in this regard. If possible, I'd like all the versioned files to contain an id string, so that it's easy to determine when the file was last changed and by whom, but this is optional. For the most part I just need a way of going back to previous versions. Thanks, Maxim Khitrov
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?26ddd1750706011227g224eaa1dh93233400c704595e>