/usr/share/doc/diffutils-doc/Interactive-Merging.html is in diffutils-doc 1:3.3-3.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
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 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 | <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<!-- This manual is for GNU Diffutils
(version 3.3, 23 March 2013),
and documents the GNU diff, diff3,
sdiff, and cmp commands for showing the
differences between files and the GNU patch command for
using their output to update files.
Copyright (C) 1992-1994, 1998, 2001-2002, 2004, 2006, 2009-2013 Free
Software Foundation, Inc.
Permission is granted to copy, distribute and/or modify this document
under the terms of the GNU Free Documentation License, Version 1.3 or
any later version published by the Free Software Foundation; with no
Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts.
A copy of the license is included in the section entitled
"GNU Free Documentation License." -->
<!-- Created by GNU Texinfo 6.0, http://www.gnu.org/software/texinfo/ -->
<head>
<title>Comparing and Merging Files: Interactive Merging</title>
<meta name="description" content="Comparing and Merging Files: Interactive Merging">
<meta name="keywords" content="Comparing and Merging Files: Interactive Merging">
<meta name="resource-type" content="document">
<meta name="distribution" content="global">
<meta name="Generator" content="makeinfo">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<link href="index.html#Top" rel="start" title="Top">
<link href="Index.html#Index" rel="index" title="Index">
<link href="index.html#SEC_Contents" rel="contents" title="Table of Contents">
<link href="index.html#Top" rel="up" title="Top">
<link href="Merging-with-patch.html#Merging-with-patch" rel="next" title="Merging with patch">
<link href="diff3-Merging.html#Saving-the-Changed-File" rel="prev" title="Saving the Changed File">
<style type="text/css">
<!--
a.summary-letter {text-decoration: none}
blockquote.indentedblock {margin-right: 0em}
blockquote.smallindentedblock {margin-right: 0em; font-size: smaller}
blockquote.smallquotation {font-size: smaller}
div.display {margin-left: 3.2em}
div.example {margin-left: 3.2em}
div.lisp {margin-left: 3.2em}
div.smalldisplay {margin-left: 3.2em}
div.smallexample {margin-left: 3.2em}
div.smalllisp {margin-left: 3.2em}
kbd {font-style: oblique}
pre.display {font-family: inherit}
pre.format {font-family: inherit}
pre.menu-comment {font-family: serif}
pre.menu-preformatted {font-family: serif}
pre.smalldisplay {font-family: inherit; font-size: smaller}
pre.smallexample {font-size: smaller}
pre.smallformat {font-family: inherit; font-size: smaller}
pre.smalllisp {font-size: smaller}
span.nocodebreak {white-space: nowrap}
span.nolinebreak {white-space: nowrap}
span.roman {font-family: serif; font-weight: normal}
span.sansserif {font-family: sans-serif; font-weight: normal}
ul.no-bullet {list-style: none}
-->
</style>
</head>
<body lang="en">
<a name="Interactive-Merging"></a>
<div class="header">
<p>
Next: <a href="Merging-with-patch.html#Merging-with-patch" accesskey="n" rel="next">Merging with patch</a>, Previous: <a href="diff3-Merging.html#diff3-Merging" accesskey="p" rel="prev">diff3 Merging</a>, Up: <a href="index.html#Top" accesskey="u" rel="up">Top</a> [<a href="index.html#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="Index.html#Index" title="Index" rel="index">Index</a>]</p>
</div>
<a name="Interactive-Merging-with-sdiff"></a>
<h2 class="chapter">9 Interactive Merging with <code>sdiff</code></h2>
<a name="index-diff-merging"></a>
<a name="index-interactive-merging"></a>
<p>With <code>sdiff</code>, you can merge two files interactively based on a
side-by-side <samp>-y</samp> format comparison (see <a href="Output-Formats.html#Side-by-Side">Side by Side</a>). Use
<samp>--output=<var>file</var></samp> (<samp>-o <var>file</var></samp>) to specify where to
put the merged text. See <a href="Invoking-sdiff.html#Invoking-sdiff">Invoking sdiff</a>, for more details on the
options to <code>sdiff</code>.
</p>
<p>Another way to merge files interactively is to use the Emacs Lisp
package <code>emerge</code>. See <a href="http://www.gnu.org/software/emacs/manual/html_node/emacs/emerge.html#emerge">emerge</a> in <cite>The
<acronym>GNU</acronym> Emacs Manual</cite>, for more information.
</p>
<table class="menu" border="0" cellspacing="0">
<tr><td align="left" valign="top">• <a href="#sdiff-Option-Summary" accesskey="1">sdiff Option Summary</a>:</td><td> </td><td align="left" valign="top">Summary of <code>sdiff</code> options.
</td></tr>
<tr><td align="left" valign="top">• <a href="#Merge-Commands" accesskey="2">Merge Commands</a>:</td><td> </td><td align="left" valign="top">Merging two files interactively.
</td></tr>
</table>
<hr>
<a name="sdiff-Option-Summary"></a>
<div class="header">
<p>
Next: <a href="#Merge-Commands" accesskey="n" rel="next">Merge Commands</a>, Up: <a href="#Interactive-Merging" accesskey="u" rel="up">Interactive Merging</a> [<a href="index.html#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="Index.html#Index" title="Index" rel="index">Index</a>]</p>
</div>
<a name="Specifying-diff-Options-to-sdiff"></a>
<h3 class="section">9.1 Specifying <code>diff</code> Options to <code>sdiff</code></h3>
<a name="index-sdiff-output-format"></a>
<p>The following <code>sdiff</code> options have the same meaning as for
<code>diff</code>. See <a href="Invoking-diff.html#diff-Options">diff Options</a>, for the use of these options.
</p>
<div class="example">
<pre class="example">-a -b -d -i -t -v
-B -E -I <var>regexp</var> -Z
--expand-tabs
--ignore-blank-lines --ignore-case
--ignore-matching-lines=<var>regexp</var> --ignore-space-change
--ignore-tab-expansion --ignore-trailing-space
--left-column --minimal --speed-large-files
--strip-trailing-cr --suppress-common-lines
--tabsize=<var>columns</var> --text --version --width=<var>columns</var>
</pre></div>
<p>For historical reasons, <code>sdiff</code> has alternate names for some
options. The <samp>-l</samp> option is equivalent to the
<samp>--left-column</samp> option, and similarly <samp>-s</samp> is equivalent
to <samp>--suppress-common-lines</samp>. The meaning of the <code>sdiff</code>
<samp>-w</samp> and <samp>-W</samp> options is interchanged from that of
<code>diff</code>: with <code>sdiff</code>, <samp>-w <var>columns</var></samp> is
equivalent to <samp>--width=<var>columns</var></samp>, and <samp>-W</samp> is
equivalent to <samp>--ignore-all-space</samp>. <code>sdiff</code> without the
<samp>-o</samp> option is equivalent to <code>diff</code> with the
<samp>--side-by-side</samp> (<samp>-y</samp>) option (see <a href="Output-Formats.html#Side-by-Side">Side by Side</a>).
</p>
<hr>
<a name="Merge-Commands"></a>
<div class="header">
<p>
Previous: <a href="#sdiff-Option-Summary" accesskey="p" rel="prev">sdiff Option Summary</a>, Up: <a href="#Interactive-Merging" accesskey="u" rel="up">Interactive Merging</a> [<a href="index.html#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="Index.html#Index" title="Index" rel="index">Index</a>]</p>
</div>
<a name="Merge-Commands-1"></a>
<h3 class="section">9.2 Merge Commands</h3>
<a name="index-merge-commands"></a>
<a name="index-merging-interactively"></a>
<p>Groups of common lines, with a blank gutter, are copied from the first
file to the output. After each group of differing lines, <code>sdiff</code>
prompts with ‘<samp>%</samp>’ and pauses, waiting for one of the following
commands. Follow each command with <tt class="key">RET</tt>.
</p>
<dl compact="compact">
<dt>‘<samp>e</samp>’</dt>
<dd><p>Discard both versions.
Invoke a text editor on an empty temporary file,
then copy the resulting file to the output.
</p>
</dd>
<dt>‘<samp>eb</samp>’</dt>
<dd><p>Concatenate the two versions, edit the result in a temporary file,
then copy the edited result to the output.
</p>
</dd>
<dt>‘<samp>ed</samp>’</dt>
<dd><p>Like ‘<samp>eb</samp>’, except precede each version with a header that
shows what file and lines the version came from.
</p>
</dd>
<dt>‘<samp>el</samp>’</dt>
<dt>‘<samp>e1</samp>’</dt>
<dd><p>Edit a copy of the left version, then copy the result to the output.
</p>
</dd>
<dt>‘<samp>er</samp>’</dt>
<dt>‘<samp>e2</samp>’</dt>
<dd><p>Edit a copy of the right version, then copy the result to the output.
</p>
</dd>
<dt>‘<samp>l</samp>’</dt>
<dt>‘<samp>1</samp>’</dt>
<dd><p>Copy the left version to the output.
</p>
</dd>
<dt>‘<samp>q</samp>’</dt>
<dd><p>Quit.
</p>
</dd>
<dt>‘<samp>r</samp>’</dt>
<dt>‘<samp>2</samp>’</dt>
<dd><p>Copy the right version to the output.
</p>
</dd>
<dt>‘<samp>s</samp>’</dt>
<dd><p>Silently copy common lines.
</p>
</dd>
<dt>‘<samp>v</samp>’</dt>
<dd><p>Verbosely copy common lines. This is the default.
</p></dd>
</dl>
<a name="index-EDITOR"></a>
<p>The text editor invoked is specified by the <code>EDITOR</code> environment
variable if it is set. The default is system-dependent.
</p>
<hr>
<div class="header">
<p>
Previous: <a href="#sdiff-Option-Summary" accesskey="p" rel="prev">sdiff Option Summary</a>, Up: <a href="#Interactive-Merging" accesskey="u" rel="up">Interactive Merging</a> [<a href="index.html#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="Index.html#Index" title="Index" rel="index">Index</a>]</p>
</div>
</body>
</html>
|