WTF mergemaster VCS Id checking?
Benjamin Kaduk
kaduk at MIT.EDU
Tue Jan 17 02:25:57 UTC 2012
On Mon, 16 Jan 2012, deeptech71 at gmail.com wrote:
> Every time I run mergemaster, I have to manually confirm all of the
What is your timescale for "every time"? One year? Five years?
> local changes I have done to /etc (ie., state how to merge the
> temporary and existing files), even files have not changed in the
> upstream since the last mergemaster run (for example,
> temproot/etc/master.passwd virtually never changes). This behaviour is
> annoying, but I've already gotten used to it, and thought that it's
> the preferred one, to force a system administrator to review,
> periodically, all changes in /etc.
>
> I was surprized that today, mergemaster did not mention one of my
> changes in /etc:
> *** Temp ./etc/rc.d/bgfsck and installed have the same CVS Id, deleting
>
> So it now seems that it actually is intended for mergemaster to
> mention only files that have changed in the upstream since the last
> mergemaster run, but that funtionality fails. Apparently, some
That is correct up to a point.
Now that the main src repository is stored in subversion, a svn2cvs
exporter is used to populate a cloned CVS tree which is then used for csup
and friends. However, the svn2cvs exporter deals poorly with branches and
causes "version number churn" on many files.
> upstream files have the following VCS Id:
> # $FreeBSD$
> and that anulls version checking. Recently, a lot of files in /etc
> (ie., rc.d files) have received full VCS Id strings, but not all.
> Someone ought to touch files in the subversion repository?
Perhaps, but it's not entirely clear.
Have you considered the -F or -U options to mergemaster? If I remember
correctly, -F was added precisely because of this issue you are
encountering.
>
> So in either way you look at it, something is WRONG(TM).
>
> BTW, off-topic:
> 1. mergemaster outputs "CVS Id", while mergemaster's manpage contains
> "VCS Id". One of these is WRONG(TM). Which one?
Oh, probably the output, but I'm not authoritative.
> 2. mergemaster outputs "Use 'i' to install merged file". TODO: add a "the".
Constructions of this form are quite common in technical writing, though I
would not object to the addition of the 'the'.
> 3. The BUGS section of mergemaster's manpage is redundant.
Maybe, but sometimes it's worth explicitly mentioning things which should
go without saying.
-Ben Kaduk
More information about the freebsd-current
mailing list