On Wednesday 24 March 2010 12:57:48 pm Bakul Shah wrote: > On Tue, 23 Mar 2010 11:08:45 EDT John Baldwin <[email protected]> wrote: > > or 'cvs up'. If the local changes I made do not conflict, then just merge > > the > > changes automatically (e.g. enabling a serial console in /etc/ttys should > > not > > conflict with $FreeBSD$ changing when moving from 7.2 to 7.3). > > > > To that end, I wrote a new tool that I think does a decent job of solving > > these goals. It does not force you to read the diffs of any files updated > > in > > /etc, but there are other tools available for that. However, if you are ok > > with reading UPDATING, commit logs, and/or release notes for that sort of > > info, then this tool may work for you. > > > > It also has a nice feature in that you can generate a 'diff' of your > > current > > /etc tree against the "stock" tree allowing you to easily see what local > > changes you have made. I have already found this feature to be far more > > useful than I first expected. > > > > The UI is (hopefully) minimalist. The default output looks like the output > > of > > 'svn up' or 'cvs up'. > > > > If you'd like to give it a shot, you can find the script and manpage at > > http://www.FreeBSD.org/~jhb/etcupdate/ There is a README file that gives a > > brief overview and instructions on how to bootstrap the needed metadata > > before > > the first update. There is also an HTML version of the manpage. > > Looks good! > > But I wonder... why not build something like this around cvs? > Basically a three way merge is exactly what we want for /etc, > right? cvs because it is in the base system. I used to > maintain /etc changes in cvs and that was useful in keeping > track of configuration changes on shared machines.
I wanted something that was version-control agnostic (we use svn at work for our local version of FreeBSD for example). Also, while having full history would be nice, that uses up a good bit more disk space and would duplicate the history that is available in the existing FreeBSD version control (but with less useful details such as commit log messages). I use CVS for /etc on some of my machines as well and find it handy, but I tend to not use that to do full 3-way merges, but just track what is in /etc itself. -- John Baldwin _______________________________________________ [email protected] mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-hackers To unsubscribe, send any mail to "[email protected]"

