mergemaster.8 (67860) | mergemaster.8 (67949) |
---|---|
1.\" Copyright (c) 1998-2000 Douglas Barton 2.\" All rights reserved. 3.\" 4.\" Redistribution and use in source and binary forms, with or without 5.\" modification, are permitted provided that the following conditions 6.\" are met: 7.\" 1. Redistributions of source code must retain the above copyright 8.\" notice, this list of conditions and the following disclaimer. --- 8 unchanged lines hidden (view full) --- 17.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 18.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 19.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 20.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 21.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 22.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 23.\" SUCH DAMAGE. 24.\" | 1.\" Copyright (c) 1998-2000 Douglas Barton 2.\" All rights reserved. 3.\" 4.\" Redistribution and use in source and binary forms, with or without 5.\" modification, are permitted provided that the following conditions 6.\" are met: 7.\" 1. Redistributions of source code must retain the above copyright 8.\" notice, this list of conditions and the following disclaimer. --- 8 unchanged lines hidden (view full) --- 17.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 18.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 19.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 20.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 21.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 22.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 23.\" SUCH DAMAGE. 24.\" |
25.\" $FreeBSD: head/usr.sbin/mergemaster/mergemaster.8 67860 2000-10-29 09:41:06Z dougb $ | 25.\" $FreeBSD: head/usr.sbin/mergemaster/mergemaster.8 67949 2000-10-30 10:33:51Z dougb $ |
26.\" | 26.\" |
27.Dd September 10, 1999 | 27.Dd October 30, 2000 |
28.Dt MERGEMASTER 8 29.Os FreeBSD 30.Sh NAME 31.Nm mergemaster 32.Nd Merge configuration files, et al during an upgrade 33.Sh SYNOPSIS 34.Nm | 28.Dt MERGEMASTER 8 29.Os FreeBSD 30.Sh NAME 31.Nm mergemaster 32.Nd Merge configuration files, et al during an upgrade 33.Sh SYNOPSIS 34.Nm |
35.Op Fl scrvah | 35.Op Fl scrvahi |
36.Op Fl m Ar /path/to/sources 37.Op Fl t Ar /path/to/temp/root 38.Op Fl d 39.Op Fl u Ar N 40.Op Fl w Ar N | 36.Op Fl m Ar /path/to/sources 37.Op Fl t Ar /path/to/temp/root 38.Op Fl d 39.Op Fl u Ar N 40.Op Fl w Ar N |
41.Op Fl D Ar /path |
|
41.Sh DESCRIPTION 42.Nm 43is a Bourne shell script which is designed to aid you 44in updating the various configuration and other files 45associated with FreeBSD. 46It is 47.Sy HIGHLY 48recommended that you back up your --- 4 unchanged lines hidden (view full) --- 53.Pa /usr/src/etc/Makefile 54to build a temporary root environment from 55.Pa / 56down, populating that environment with the various 57files. 58You can specify a different source directory 59with the 60.Op Fl m | 42.Sh DESCRIPTION 43.Nm 44is a Bourne shell script which is designed to aid you 45in updating the various configuration and other files 46associated with FreeBSD. 47It is 48.Sy HIGHLY 49recommended that you back up your --- 4 unchanged lines hidden (view full) --- 54.Pa /usr/src/etc/Makefile 55to build a temporary root environment from 56.Pa / 57down, populating that environment with the various 58files. 59You can specify a different source directory 60with the 61.Op Fl m |
61command line option. | 62command line option, or specify the destination 63directory with the 64.Op Fl D 65option. |
62It then compares each file in that environment 63to its installed counterpart. 64When the script finds a 65change in the new file, or there is no installed 66version of the new file it gives you four options to 67deal with it. 68You can install the new file as is, 69delete the new file, merge the old and new --- 38 unchanged lines hidden (view full) --- 108.Pp 109The script uses the owner and group id's 110that the files are created with by 111.Pa /usr/src/etc/Makefile , 112and file permissions as specified by the umask. 113Unified diffs are used by default to display any 114differences unless you choose context diffs. 115.Pp | 66It then compares each file in that environment 67to its installed counterpart. 68When the script finds a 69change in the new file, or there is no installed 70version of the new file it gives you four options to 71deal with it. 72You can install the new file as is, 73delete the new file, merge the old and new --- 38 unchanged lines hidden (view full) --- 112.Pp 113The script uses the owner and group id's 114that the files are created with by 115.Pa /usr/src/etc/Makefile , 116and file permissions as specified by the umask. 117Unified diffs are used by default to display any 118differences unless you choose context diffs. 119.Pp |
120.Nm 121will source scripts that you specify right before 122it starts the comparison, and after it's done running. 123The easiest way to handle this is to place the path 124to the script(s) in the appropriate variables in your 125.Pa .mergemasterrc 126file. 127The script sourced before comparison is named in 128.Ev MM_PRE_COMPARE_SCRIPT , 129and the one sourced after the script is done is 130.Ev MM_EXIT_SCRIPT . 131This is the recommended way to specify local modifications, 132or files that you want to give special handling to. 133This includes files that you want to be deleted without 134being compared. 135Because the named scripts are sourced from within 136.Nm , 137all of the script's variables are available for use in 138your custom script. 139.Pp |
|
116The options are as follows: 117.Bl -tag -width Fl 118.It Fl s 119Perform a strict comparison, diff'ing every pair of files. 120.It Fl c 121Use context diffs instead of unified diffs. 122.It Fl r 123Re-run --- 20 unchanged lines hidden (view full) --- 144directory exists, it creates a new one in a previously 145non-existent directory. 146This option unsets the verbose flag, 147but is compatible with all other options. 148Setting -a makes 149-w superfluous. 150.It Fl h 151Display usage and help information. | 140The options are as follows: 141.Bl -tag -width Fl 142.It Fl s 143Perform a strict comparison, diff'ing every pair of files. 144.It Fl c 145Use context diffs instead of unified diffs. 146.It Fl r 147Re-run --- 20 unchanged lines hidden (view full) --- 168directory exists, it creates a new one in a previously 169non-existent directory. 170This option unsets the verbose flag, 171but is compatible with all other options. 172Setting -a makes 173-w superfluous. 174.It Fl h 175Display usage and help information. |
176.It Fl i 177Automatically install any files that do not exist in the 178destination directory. |
|
152.It Fl m Ar /path/to/sources 153Specify the path to the directory where you want to do the 154.Xr make 1 . 155(In other words, where your sources are, but -s was already 156taken.) 157.It Fl t Ar /path/to/temp/root 158Create the temporary root environment in 159.Pa /path/to/temp/root --- 7 unchanged lines hidden (view full) --- 167.It Fl u Ar N 168Specify a numeric umask. 169The default is 022. 170.It Fl w Ar N 171Supply an alternate screen width to the 172.Xr sdiff 1 173command in numbers of columns. 174The default is 80. | 179.It Fl m Ar /path/to/sources 180Specify the path to the directory where you want to do the 181.Xr make 1 . 182(In other words, where your sources are, but -s was already 183taken.) 184.It Fl t Ar /path/to/temp/root 185Create the temporary root environment in 186.Pa /path/to/temp/root --- 7 unchanged lines hidden (view full) --- 194.It Fl u Ar N 195Specify a numeric umask. 196The default is 022. 197.It Fl w Ar N 198Supply an alternate screen width to the 199.Xr sdiff 1 200command in numbers of columns. 201The default is 80. |
202.It Fl D Ar /path 203Specify the destination directory for the installed files. |
|
175.El 176.Sh ENVIRONMENT 177The 178.Nm 179script uses the 180.Ev PAGER 181environment variable if set. 182Otherwise it uses 183.Xr more 1 . 184If 185.Ev PAGER 186specifies a program outside 187its 188limited 189.Ev PATH 190without specifying the full path, 191.Nm 192prompts you with options on how to proceed. | 204.El 205.Sh ENVIRONMENT 206The 207.Nm 208script uses the 209.Ev PAGER 210environment variable if set. 211Otherwise it uses 212.Xr more 1 . 213If 214.Ev PAGER 215specifies a program outside 216its 217limited 218.Ev PATH 219without specifying the full path, 220.Nm 221prompts you with options on how to proceed. |
222The 223.Ev MM_PRE_COMPARE_SCRIPT 224and 225.Ev MM_EXIT_SCRIPT 226variables are used as described above. 227Other variables that are used by the script internally 228can be specified in 229.Pa .mergemasterrc 230as described in more detail below. |
|
193.Sh EXAMPLES 194Typically all you will need to do is type 195.Nm 196at the prompt and the script will do all the work for you. 197.Pp 198To use context diff's and have 199.Nm 200explain more things as it goes along, use: --- 34 unchanged lines hidden (view full) --- 235#STRICT=no 236# 237# Flag(s) to use for diff displayed when files differ 238#DIFF_FLAG='-u' 239# 240# Verbose mode includes more details and additional checks 241#VERBOSE= 242# | 231.Sh EXAMPLES 232Typically all you will need to do is type 233.Nm 234at the prompt and the script will do all the work for you. 235.Pp 236To use context diff's and have 237.Nm 238explain more things as it goes along, use: --- 34 unchanged lines hidden (view full) --- 273#STRICT=no 274# 275# Flag(s) to use for diff displayed when files differ 276#DIFF_FLAG='-u' 277# 278# Verbose mode includes more details and additional checks 279#VERBOSE= 280# |
281# Automatically install files that do not exist on the system already 282#AUTO_INSTALL= 283# |
|
243# Sourcedir is the directory to do the 'make' in (where the new files are) | 284# Sourcedir is the directory to do the 'make' in (where the new files are) |
244#SOURCEDIR=/usr/src/etc | 285#SOURCEDIR='/usr/src/etc' |
245# 246# The umask for mergemaster to compare the default file's modes to 247#NEW_UMASK=022 248# | 286# 287# The umask for mergemaster to compare the default file's modes to 288#NEW_UMASK=022 289# |
290# Specify the destination directory for the installed files 291#DESTDIR= 292# |
|
249# The following options have no command line overrides 250# For those who just cannot stand including the full path to PAGER 251#DONT_CHECK_PAGER= | 293# The following options have no command line overrides 294# For those who just cannot stand including the full path to PAGER 295#DONT_CHECK_PAGER= |
296# |
|
252# If you set 'yes' above, make sure to include the PATH to your pager | 297# If you set 'yes' above, make sure to include the PATH to your pager |
253#PATH=/bin:/usr/bin:/usr/sbin | 298#PATH=/bin:/usr/bin:/usr/sbin:/sbin 299# |
254# Don't compare the old and new motd files 255#IGNORE_MOTD=yes | 300# Don't compare the old and new motd files 301#IGNORE_MOTD=yes |
302# 303# Specify the path to scripts to run before the comparison starts, 304# and/or after the script has finished its work 305#MM_PRE_COMPARE_SCRIPT= 306#MM_EXIT_SCRIPT= 307 |
|
256.Ed 257.Sh SEE ALSO 258.Xr cvs 1 , 259.Xr diff 1 , 260.Xr make 1 , 261.Xr more 1 , 262.Xr sdiff 1 , 263.Xr pwd_mkdb 8 --- 22 unchanged lines hidden (view full) --- 286web pages in a much simpler form under the name 287.Pa comproot 288on 13 March 1998. The idea for creating the 289temporary root environment comes from Nik Clayton's 290make world tutorial which is referenced above. 291.Pp 292.Sh AUTHOR 293This manual page and the script itself were written by | 308.Ed 309.Sh SEE ALSO 310.Xr cvs 1 , 311.Xr diff 1 , 312.Xr make 1 , 313.Xr more 1 , 314.Xr sdiff 1 , 315.Xr pwd_mkdb 8 --- 22 unchanged lines hidden (view full) --- 338web pages in a much simpler form under the name 339.Pa comproot 340on 13 March 1998. The idea for creating the 341temporary root environment comes from Nik Clayton's 342make world tutorial which is referenced above. 343.Pp 344.Sh AUTHOR 345This manual page and the script itself were written by |
294.An Douglas Barton Aq Doug@gorean.org . | 346.An Douglas Barton Aq DougB@FreeBSD.org . |
295.Sh BUGS 296There are no known bugs. 297Please report any problems, 298comments or suggestions to the author. 299Several of the 300improvements to this program have come from user 301suggestions. 302Thank you. | 347.Sh BUGS 348There are no known bugs. 349Please report any problems, 350comments or suggestions to the author. 351Several of the 352improvements to this program have come from user 353suggestions. 354Thank you. |