Re: CURRENT, usr/src on git, howto "mergemaster"?

From: Mark Millard <marklmi_at_yahoo.com>
Date: Mon, 4 Jan 2021 08:06:33 -0800
David Wolfskill david at catwhisker.org wrote on
Mon Jan 4 12:29:45 UTC 2021 :

> After trying to use mergemaster for a couple of weeks (after the switch
> to sources from git, vs. svn) of daily tracking of head & stable/12 on a
> pair of machines (and weekly tracking of stable/12 on another 4), I gave
> up and switched to etcupdate.
> 
> Note that each of mergemaster and etcupdate has a "-p" flag; it is
> functionally equivalent between the two, but called slightly
> differently:
> 
> * mergemaster: 'Pre-buildworld mode'
> 
> * etcupdate: '“pre-world” mode'
> 
> And note that per src/UPDATING, "mergemaster -Fp" is invoked after "make
> buildworld" but before "make installworld" (under "To rebuild everything
> and install it on the current system.", under "COMMON ITEMS:").

I'm still experimenting but man etcupdate reports:

QUOTE
Bootstrapping
     The etcupdate utility may need to be bootstrapped before it can be used.
     The diff command will fail with an error about a missing reference tree
     if bootstrapping is needed.

     Bootstrapping etcupdate requires a source tree that matches the currently
     installed world.  The easiest way to ensure this is to bootstrap
     etcupdate before updating the source tree to start the next world upgrade
     cycle.  First, generate a reference tree:

           etcupdate extract

     Second, use the diff command to compare the reference tree to your
     current files in /etc.  Undesired differences should be removed using an
     editor, patch(1), or by copying files from the reference tree (located at
     /var/db/etcupdate/current by default)

     If the tree at /usr/src is already newer than the currently installed
     world, a new tree matching the currently installed world can be checked
     out to a temporary location.  The reference tree for etcupdate can then
     be generated via:

           etcupdate extract -s /path/to/tree

     The diff command can be used as above to remove undesired differences.
     Afterwards, the changes in the tree at /usr/src can be merged via a
     regular merge.
END QUOTE

I do not remember mergemaster having a bootstrap stage in setting
it up, a stage that should be executed before /usr/src (or whatever)
is updated. So the procedures are different overall.

===
Mark Millard
marklmi at yahoo.com
( dsl-only.net went
away in early 2018-Mar)
Received on Mon Jan 04 2021 - 15:06:43 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:41:26 UTC