Here is an idea for the mergemaster hackers' consideration!

By keeping /etc files in a source repository one can archive
and document all local changes.  This is useful for some of
the same reasons for which we keep sources in a repo:
recovery from mistakes, reuse of old code, checking who did
what, more than one person can make changes, tracking
history, debugging etc.

If mergemaster handled or worked with a local cvs /etc repo
that'd be very nice!  The idea is to make changes and test
them in a temp workspace and commit them *only if they do the
right thing*!  I envision a workflow something like this
(using make for illustration purposes):

cd <etc workspace>
make etc-diff   # ensure your workspace reflects what is in /etc
<if resync is needed, commit them to local repo>

make import     # import the latest /usr/src/etc into etc workspace
make diff       # look over the changes
<make any local repairs>
make install    # install to /etc; do mkdb etc.
<check out your changes>

Finally:
make commit     # commit changes to local repo
OR
make undo       # if things didn't quite work, restore /etc to old state.

Roughly, the current mergemaster does the work of make
import, make diff, repairs and install.

Comments?

-- bakul
_______________________________________________
freebsd-hackers@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-hackers
To unsubscribe, send any mail to "[EMAIL PROTECTED]"

Reply via email to