File: index.html

package info (click to toggle)
xxdiff 1%3A3.1-3
  • links: PTS
  • area: main
  • in suites: sarge
  • size: 3,936 kB
  • ctags: 2,393
  • sloc: cpp: 19,971; python: 3,334; ansic: 1,505; sh: 1,466; perl: 308; yacc: 273; lex: 219; lisp: 115; makefile: 101
file content (231 lines) | stat: -rw-r--r-- 13,111 bytes parent folder | download
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
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
<?xml version="1.0" encoding="iso-8859-1" ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<meta name="generator" content="Docutils 0.3.1: http://docutils.sourceforge.net/" />
<title>xxdiff: Graphical File And Directories Comparator And Merge Tool</title>
<link rel="stylesheet" href="/docutils-style.css" type="text/css" />
</head>
<body>
<div class="document" id="xxdiff-graphical-file-and-directories-comparator-and-merge-tool">
<h1 class="title">xxdiff: Graphical File And Directories Comparator And Merge Tool</h1>
<div class="contents topic" id="table-of-contents">
<p class="topic-title"><a name="table-of-contents">Table of Contents</a></p>
<ul class="simple">
<li><a class="reference" href="#description" id="id3" name="id3">Description</a><ul>
<li><a class="reference" href="#features" id="id4" name="id4">Features</a><ul>
<li><a class="reference" href="#unicode-and-inline-editing" id="id5" name="id5">Unicode and Inline Editing</a></li>
</ul>
</li>
</ul>
</li>
<li><a class="reference" href="#documentation" id="id6" name="id6">Documentation</a><ul>
<li><a class="reference" href="#screenshots" id="id7" name="id7">Screenshots</a></li>
</ul>
</li>
<li><a class="reference" href="#download" id="id8" name="id8">Download</a><ul>
<li><a class="reference" href="#tools" id="id9" name="id9">Tools</a></li>
<li><a class="reference" href="#packages" id="id10" name="id10">Packages</a></li>
</ul>
</li>
<li><a class="reference" href="#reporting-bugs" id="id11" name="id11">Reporting Bugs</a></li>
<li><a class="reference" href="#installation" id="id12" name="id12">Installation</a><ul>
<li><a class="reference" href="#dependencies" id="id13" name="id13">Dependencies</a></li>
<li><a class="reference" href="#portability" id="id14" name="id14">Portability</a></li>
</ul>
</li>
<li><a class="reference" href="#external-links" id="id15" name="id15">External Links</a></li>
<li><a class="reference" href="#copyright-and-license" id="id16" name="id16">Copyright and License</a></li>
<li><a class="reference" href="#author" id="id17" name="id17">Author</a></li>
</ul>
</div>
<div class="section" id="description">
<h1><a class="toc-backref" href="#id3" name="description">Description</a></h1>
<p>This is the official home of <strong>xxdiff</strong>, a graphical file and
directories comparator and merge tool.</p>
<p><strong>xxdiff</strong> is provided under the GNU GPL open source license. It has
reached stable state, and is known to run on many popular unices,
including IRIX, Linux, Solaris, HP/UX, DEC Tru64.  It has been
deployed inside many large organizations and is being actively
maintained by its author (Martin Blais).</p>
<div class="section" id="features">
<h2><a class="toc-backref" href="#id4" name="features">Features</a></h2>
<ul class="simple">
<li>Comparing <strong>two</strong> files, <strong>three</strong> files, or two <strong>directories</strong>
(shallow and recursive);</li>
<li><strong>Horizontal diffs</strong> highlighting;</li>
<li>Files can be <strong>merged</strong> interactively and resulting output
visualized and saved;</li>
<li>Has features to assist in performing <strong>merge reviews/policing</strong>;</li>
<li>Can <strong>unmerge CVS conflicts</strong> in automatically merged file and
display them as two files, to help resolve conflicts;</li>
<li>Uses <strong>external diff program</strong> to compute differences: works with
GNU diff, SGI diff and ClearCase's cleardiff, and any other diff
whose output is similar to those;</li>
<li>Fully customizable with a resource file;</li>
<li>Look-and-feel similar to Rudy Wortel's/SGI xdiff, it is desktop
agnostic (i.e. will work equally well with KDE or Gnome);</li>
<li>Features and output that ease integration with scripts.</li>
</ul>
<p><strong>xxdiff</strong> was (and probably still is) tested daily in a merge
reviewing/policing context by more than 50 engineers at <a class="reference" href="http://www.discreet.com">discreet</a>, and since this task is a
significant part of their development process, many of the features
are a direct result of suggestions from these people while the author
was working there.</p>
<p>New releases and updates are announced on freshmeat. You can register
for notification at either freshmeat or sourceforge.  xxdiff is
implemented in C++ and its runtime dependencies is only the <strong>Qt UI
toolkit</strong> from TrollTech.</p>
<div class="section" id="unicode-and-inline-editing">
<h3><a class="toc-backref" href="#id5" name="unicode-and-inline-editing">Unicode and Inline Editing</a></h3>
<p><strong>xxdiff</strong> does not support comparing files encoded with Unicode.
Also, it does not support inline editing of the diffed files.  If you
need these features, you could try emacs or Meld (although both of
these lack some of the most interesting features of xxdiff).</p>
</div>
</div>
</div>
<div class="section" id="documentation">
<h1><a class="toc-backref" href="#id6" name="documentation">Documentation</a></h1>
<ul class="simple">
<li><a class="reference" href="doc/xxdiff-doc.html">User's Manual</a> <em>(user's manual, all features, FAQ)</em>;</li>
<li><a class="reference" href="doc/xxdiff-integration.html">Integrating xxdiff with scripts</a>;</li>
<li><a class="reference" href="doc/xxdiff-secrets.html">The almost secret nifty features of xxdiff</a>;</li>
<li><a class="reference" href="CHANGES">CHANGES</a> <em>(news, recent changes, history)</em>;</li>
<li><a class="reference" href="TODO">TODO</a> <em>(future features, wishlist)</em>;</li>
</ul>
<div class="section" id="screenshots">
<h2><a class="toc-backref" href="#id7" name="screenshots">Screenshots</a></h2>
<ul class="simple">
<li><a class="reference" href="doc/screenshots/dirindex.html">Screenshots</a></li>
</ul>
</div>
</div>
<div class="section" id="download">
<h1><a class="toc-backref" href="#id8" name="download">Download</a></h1>
<ul class="simple">
<li><a class="reference" href="http://sourceforge.net/project/showfiles.php?group_id=2198">Releases Download</a>
<em>(source and binaries)</em></li>
<li>A Windows build (with some minor bugs) can be found <a class="reference" href="http://xxdiff.sourceforge.net/download/2.9/windows">here</a>.  No support offered
though.</li>
</ul>
<div class="section" id="tools">
<h2><a class="toc-backref" href="#id9" name="tools">Tools</a></h2>
<p><strong>xxdiff</strong> comes with a bunch of wrapper Python scripts that invoke xxdiff in
creative ways.  The author has been using these for a long time now and decided
for version 3.0 to clean them up and make them a little more generic so everyone
can use them.</p>
<ul>
<li><p class="first"><a class="reference" href="doc/xxdiff-cond-replace.html">xxdiff-conf-replace</a>: conditional to a user's
acceptance (or merge decision), replace an original file by a new file
(typically the result of some external process). This is useful in shell
loops, a general purpose interactive conditional copy operation;</p>
</li>
<li><p class="first"><a class="reference" href="doc/xxdiff-find-grep-sed.html">xxdiff-find-grep-sed</a>: walk a directory
hierarchy, and perform a conditional sed replacement on a given pattern,
accepting, rejecting or merging each change graphically;</p>
</li>
<li><p class="first"><a class="reference" href="doc/xxdiff-encrypted.html">xxdiff-encrypted</a>: compare contents of encrypted
files and merged into encrypted file.  This script takes care of decrypting
the input files and encrypting the merged output file with <a class="reference" href="http://www.gnupg.org">gpg</a>.</p>
</li>
<li><p class="first"><a class="reference" href="doc/xxdiff-match.html">xxdiff-match</a>: run xxdiff on a arbitrary set of
files, matching pairs or triples of files by basename. This effectively allows
you to do something like this:</p>
<pre class="literal-block">
xxdiff-match srcold/*.c srcnew/*.c
</pre>
</li>
<li><p class="first"><a class="reference" href="doc/xxdiff-patch-UNFINISHED.html">xxdiff-patch</a> (UNFINISHED): preview and
accept/reject a patch to a set of files.  <strong>This script is unfinished because
we have not been dealing with file additions and deletions, feel free to chip
in</strong>;</p>
</li>
<li><p class="first"><a class="reference" href="doc/xxdiff-cvs-diff.html">xxdiff-cvs-diff</a>: preview CVS changes and if
desired accept/reject changes to commit individually;</p>
</li>
</ul>
<!-- - `xxdiff-subversion <doc/xxdiff-subversion.html>`_: wrapper for xxdiff -->
<!-- that you can use to set the diff-cmd and diff3-cmd user configuration -->
<!-- values for `subversion <http://subversion.tigris.org>`_. -->
<p>Working versions and help files for <a class="reference" href="tools">scripts that support configuration
management systems</a> can be found in the distribution under the tools/
directory (CVS, ClearCase, etc.).</p>
</div>
<div class="section" id="packages">
<h2><a class="toc-backref" href="#id10" name="packages">Packages</a></h2>
<p>Packages are available for some specific operating systems. Here are links to
the relevant pages.  The author does not publish binaries anymore.</p>
<ul class="simple">
<li><a class="reference" href="http://www.sourcepole.ch/sources/software/xxdiff/">Linux / Debian package</a>
(provided by Tomas Pospisek)</li>
<li><a class="reference" href="http://www.geek.co.il/RPMS/xxdiff">Linux / Mandrake package</a> (maintained by
Oded Arbel)</li>
<li><a class="reference" href="http://www.gentoo.org/dyn/pkgs/dev-util/xxdiff.xml">Linux / Gentoo port</a>
(in the dev-utils category)</li>
<li><a class="reference" href="http://www.openbsd.org/ports.html">OpenBSD / ports tree</a> (maintained by Dan
Weeks, available in the ports tree)</li>
<li><a class="reference" href="http://freeware.sgi.com">IRIX / Tardist package</a> (provided by the
SGI freeware team (version may be lagging behind))</li>
</ul>
</div>
</div>
<div class="section" id="reporting-bugs">
<h1><a class="toc-backref" href="#id11" name="reporting-bugs">Reporting Bugs</a></h1>
<ul class="simple">
<li><a class="reference" href="http://sourceforge.net/tracker/?group_id=2198">Reporting Bugs</a>
<em>(bugs and feature requests)</em></li>
</ul>
<p><strong>PLEASE!</strong> report bugs using the bug tracker instead of email. It is extremely
simple, quick and easy to use, you don't even have to have a SourceForge
account, and it allows me to track issues and desired features, as well as keep
a history and dates.  Please do not send the author email about bugs.  Log them,
you don't even need a SourceForge account. Thank you.</p>
</div>
<div class="section" id="installation">
<h1><a class="toc-backref" href="#id12" name="installation">Installation</a></h1>
<div class="section" id="dependencies">
<h2><a class="toc-backref" href="#id13" name="dependencies">Dependencies</a></h2>
<p>Build dependencies are:</p>
<ul class="simple">
<li>Qt-3.2 or higher</li>
<li>tmake</li>
<li>a C++ compiler, flex and yacc</li>
</ul>
<p>Runtime dependencies are:</p>
<ul class="simple">
<li>Qt-3.2 or higher</li>
</ul>
</div>
<div class="section" id="portability">
<h2><a class="toc-backref" href="#id14" name="portability">Portability</a></h2>
<p>xxdiff is known to build and work on a great majority of UNIX platforms where Qt
works.  It has also been ported it to Mac OSX.</p>
</div>
</div>
<div class="section" id="external-links">
<h1><a class="toc-backref" href="#id15" name="external-links">External Links</a></h1>
<ul class="simple">
<li><a class="reference" href="http://sourceforge.net/projects/xxdiff">SourceForge Project Page</a></li>
<li><a class="reference" href="http://www.freshmeat.net/projects/xxdiff">Freshmeat Application Index</a></li>
<li><a class="reference" href="http://www.osdir.com/Downloads-req-viewdownloaddetails-lid-402-ttitle-xxdiff.html">Open Source Directory (OSDir) application index</a></li>
<li>Other file comparison programs at <a class="reference" href="http://directory.google.com/Top/Computers/Software/File_Management/File_Comparison/">Google directory</a>,
<a class="reference" href="http://dmoz.org/Computers/Software/File_Management/File_Comparison/">DMOZ</a></li>
<li><a class="reference" href="http://furius.ca">Author's Homepage</a></li>
</ul>
</div>
<div class="section" id="copyright-and-license">
<h1><a class="toc-backref" href="#id16" name="copyright-and-license">Copyright and License</a></h1>
<p>Copyright (C) 2001-2004  Martin Blais.  All Rights Reserved.</p>
<p>This code is distributed under the <a class="reference" href="COPYING">GNU General Public License</a>;</p>
</div>
<div class="section" id="author">
<h1><a class="toc-backref" href="#id17" name="author">Author</a></h1>
<p>Martin Blais &lt;<a class="reference" href="mailto:blais&#64;furius.ca">blais&#64;furius.ca</a>&gt;</p>
<!-- official sourceforge logo code snippet -->
<p><img alt="SourceForge Logo" height="31" src="http://sourceforge.net/sflogo.php?group_id=2198&amp;type=1" width="88" /></p>
</div>
</div>
</body>
</html>