File: rmgdiff.1x

package info (click to toggle)
mgdiff 1.0-29.1
  • links: PTS
  • area: main
  • in suites: jessie, jessie-kfreebsd
  • size: 416 kB
  • ctags: 923
  • sloc: ansic: 3,764; makefile: 1,142; awk: 477; sh: 306
file content (98 lines) | stat: -rw-r--r-- 2,761 bytes parent folder | download | duplicates (4)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
.na
.TH RMGDIFF 1x
.SH NAME
rmgdiff \- use almost any graphical file difference browser to recursively
view the differences between two directories.
.SH SYNOPSIS
rmgdiff [\-b] [\-d] [\-g gui] [\-n] dir1 dir2
.SH DESCRIPTION
.LP
.I rmgdiff
is an awk script that works in conjunction with almost any graphical file
difference browser.  It is known to work with 
.IR mgdiff ,
.IR tkdiff ,
and
.IR xdiff .
.LP
Unless I am mistaken, most of the GUI difference viewers (except for emacs)
do not have built-in support for recursing down two directories, but
.I diff
does.  Based on
.IR diff 's
output, 
.I rmgdiff
decides when to invoke the graphical difference viewer.
.LP
In addition,
.I rmgdiff
also collates
.IR diff 's
output.  As soon as a new difference is encountered in a text file,
.I rmgdiff
will print to standard output the name of the file that both directories have
in common.  It will then start the GUI and block until the user exits.
As more text files with differences are found, the GUI will be started up
again.
.LP
In the interim,
.I rmgdiff
will keep track of differences in binary (non-text) files.  It organizes
the binary files as executables, shared libraries, static libraries, object
files, and other.  Only after all the text files have been displayed will
.I rmgdiff
report the binary differences.
.LP
It also keeps track of files and directories that
.I diff
reports as being only in one directory or another.  
.I rmgdiff
organizes these entries by directory.  Thus, files in one directory
will be reported in one block, and files that are in the other directory
will be reported in a different block.
.LP
In addition to printing the name of the files that are different,
.I rmgdiff
defaults to printing the relevant portion of the output from the
.I file
command.  This has the unfortunate side-effect of slowing things down;
however, I find this information to be invaluable.  If you're just looking
for a fast way to collate 
.IR diff 's
output, try piping it into
.I sort
instead.

.SH COMMAND LINE OPTIONS
.TP 8
.B \-b
Sets the basic reporting mode.  In basic mode, rmgdiff reports only
file names.  It does not report the file types involved.
.TP 8
.B \-c
By default, files relating to
.I CVS
are ignored by
.IR rmgdiff .
If you want to include CVS files, use this option.
.TP 8
.B \-d
Sets
.I rmgdiff
to print way too much debugging information.
.TP 8
\fB\-g\fP \fIgui\fP
Tells
.I rmgdiff
which gui you would like to use for viewing differences.  By default,
.I mgdiff
is used.  You can also set $RMGDIFF_GUI in your environment, but it can
be overridden with this option.
.TP 8
.B \-n
.I rmgdiff
will not invoke the gui.  This is useful, if you only want to view the 
collated output.

.SH AUTHOR
Paul Serice (paul@serice.net)