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 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279
|
<?xml version="1.0" encoding="utf-8" ?>
<!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=utf-8" />
<meta name="generator" content="Docutils 0.10: http://docutils.sourceforge.net/" />
<title>xxdiff: Graphical File And Directories Comparator And Merge Tool</title>
<link rel="stylesheet" href="style.css" type="text/css" />
</head>
<body>
<div id="project-header">
<a href="/"><img src="/home/furius-logo-w.png" id="logo"></a>
</div>
<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>
<!-- -*- coding: utf-8 -*- -->
<div class="contents topic" id="table-of-contents">
<p class="topic-title first">Table of Contents</p>
<ul class="simple">
<li><a class="reference internal" href="#description" id="id4">Description</a><ul>
<li><a class="reference internal" href="#features" id="id5">Features</a><ul>
<li><a class="reference internal" href="#unicode-and-inline-editing" id="id6">Unicode and Inline Editing</a></li>
</ul>
</li>
</ul>
</li>
<li><a class="reference internal" href="#documentation" id="id7">Documentation</a><ul>
<li><a class="reference internal" href="#screenshots" id="id8">Screenshots</a></li>
</ul>
</li>
<li><a class="reference internal" href="#download" id="id9">Download</a><ul>
<li><a class="reference internal" href="#tools" id="id10">Tools</a></li>
<li><a class="reference internal" href="#packages" id="id11">Packages</a></li>
</ul>
</li>
<li><a class="reference internal" href="#reporting-bugs" id="id12">Reporting Bugs</a></li>
<li><a class="reference internal" href="#installation" id="id13">Installation</a><ul>
<li><a class="reference internal" href="#dependencies" id="id14">Dependencies</a></li>
<li><a class="reference internal" href="#portability" id="id15">Portability</a></li>
</ul>
</li>
<li><a class="reference internal" href="#external-links" id="id16">External Links</a></li>
<li><a class="reference internal" href="#copyright-and-license" id="id17">Copyright and License</a></li>
<li><a class="reference internal" href="#author" id="id18">Author</a></li>
</ul>
</div>
<!-- 1 Description
1.1 Features
1.1.1 Unicode and Inline Editing
2 Documentation
2.1 Screenshots
3 Download
3.1 Tools
3.2 Packages
4 Reporting Bugs
5 Installation
5.1 Dependencies
5.2 Portability
6 External Links
7 Copyright and License
8 Author -->
<div class="section" id="description">
<h1><a class="toc-backref" href="#id4">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="#id5">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 external" 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="#id6">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="#id7">Documentation</a></h1>
<ul class="simple">
<li><a class="reference external" href="doc/xxdiff-doc.html">User's Manual</a> <em>(user's manual, all features, FAQ)</em></li>
<li><a class="reference external" href="doc/xxdiff-secrets.html">The almost secret nifty features of xxdiff</a></li>
<li><a class="reference external" href="doc/xxdiff-integration.html">Integrating xxdiff with scripts</a></li>
<li><a class="reference external" href="doc/xxdiff-scripts.html">Helper Scripts for xxdiff</a></li>
<li><a class="reference external" href="CHANGES">CHANGES</a> <em>(news, recent changes, history)</em></li>
<li><a class="reference external" href="TODO">TODO</a> <em>(future features, wishlist)</em></li>
</ul>
<div class="section" id="screenshots">
<h2><a class="toc-backref" href="#id8">Screenshots</a></h2>
<ul class="simple">
<li><a class="reference external" href="doc/screenshots/gallery/index.html">Screenshots</a></li>
</ul>
</div>
</div>
<div class="section" id="download">
<h1><a class="toc-backref" href="#id9">Download</a></h1>
<ul>
<li><p class="first">Source code can be found the public Mercurial repository, here:</p>
<blockquote>
<p><a class="reference external" href="http://bitbucket.org/blais/xxdiff">http://bitbucket.org/blais/xxdiff</a></p>
</blockquote>
</li>
<li><p class="first"><a class="reference external" href="http://sourceforge.net/project/showfiles.php?group_id=2198">Releases Download</a></p>
</li>
<li><p class="first">A complete Qt4 port (which works on the Mac) has been done by
Alexandre Feblot (alexandre dot feblot at gmail dot com). This forms
the basis for versions 4.x of xxdiff as of November 2010. Some notes
about the Mac OS X build:</p>
<blockquote>
<p>On OSX, a Qt bug
(<a class="reference external" href="http://bugreports.qt.nokia.com/browse/QTBUG-9271">http://bugreports.qt.nokia.com/browse/QTBUG-9271</a>) affects
rendering performance. As a workaround you can use the much faster
"raster" graphics engine by either</p>
<ul>
<li><p class="first">using the <tt class="docutils literal"><span class="pre">--graphicssystem</span></tt> raster option</p>
</li>
<li><p class="first">defining this environment variable in your terminal:</p>
<pre class="literal-block">
QT_GRAPHICSSYSTEM=raster
</pre>
</li>
</ul>
<p>This engine has a couple of drawbacks (it will not refresh the
display during window resizing, and will dump warning lines when
opening native OSX dialogs like colors chooser or file selection
dialogs), but it's worth coping with them anyway.</p>
</blockquote>
</li>
<li><p class="first">A recent Mac OS X binary build is available for download here:</p>
<blockquote>
<p><a class="reference external" href="http://furius.ca/downloads/xxdiff/releases/macosx/">http://furius.ca/downloads/xxdiff/releases/macosx/</a></p>
</blockquote>
</li>
<li><p class="first">An recent Windows 7 port of version 4.0 has been done by Rene J.V. Bertin
(it's ifdef'ed).</p>
</li>
<li><p class="first">An old Windows build for 2.9 (with some minor bugs) and based on the
qt3 version can be found here:</p>
<blockquote>
<p><a class="reference external" href="http://furius.ca/downloads/xxdiff/releases/windows/">http://furius.ca/downloads/xxdiff/releases/windows/</a></p>
</blockquote>
<p>No support is offered though. Someone should probably port the newer
qt4 code to Windows though, that would be worthwhile.</p>
</li>
</ul>
<div class="section" id="tools">
<h2><a class="toc-backref" href="#id10">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. As of version 3.2, the standalone scripts have been refactored a
great deal, to share code together and to make them more stable. All this code
is now distributed with xxdiff, in an <tt class="docutils literal">xxdiff</tt> Python package, which you can
leverage to build your own file transformation scripts around xxdiff.</p>
<p>See the document <a class="reference external" href="doc/xxdiff-scripts.html">Helper Scripts for xxdiff</a> for full
details.</p>
<p>The scripts are available in the xxdiff distribution. To install them and the
accompanying Python package, use the standard distutils procedure:</p>
<pre class="literal-block">
su - # before root
cd xxdiff-3.x
python setup.py install
</pre>
<p>Other tools 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="#id11">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 external" href="http://www.sourcepole.ch/sources/software/xxdiff/">Linux / Debian package</a>
(provided by Tomas Pospisek)</li>
<li><a class="reference external" href="http://www.geek.co.il/RPMS/xxdiff">Linux / Mandrake package (1)</a>
(maintained by Oded Arbel)</li>
<li><a class="reference external" href="http://www.roberto.foglietta.name/pub/xxdiff">Linux / Mandrake package (2)</a>
(maintained by Roberto A. Foglietta)</li>
<li><a class="reference external" href="http://timeoff.wsisiz.edu.pl/rpms.html#xxdiff">Linux / Fedore Core (1)</a>
(maintained by Marcin ZajÄ…czkowski)</li>
<li><a class="reference external" href="http://packages.gentoo.org/ebuilds/?xxdiff-3.1">Linux / Gentoo port</a>
(in the dev-utils category)</li>
<li><a class="reference external" 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 external" 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="#id12">Reporting Bugs</a></h1>
<ul class="simple">
<li><a class="reference external" 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="#id13">Installation</a></h1>
<div class="section" id="dependencies">
<h2><a class="toc-backref" href="#id14">Dependencies</a></h2>
<p>Build dependencies are:</p>
<ul class="simple">
<li>Qt-4.5 or higher</li>
<li>a C++ compiler, flex and yacc</li>
</ul>
<p>Runtime dependencies are:</p>
<ul class="simple">
<li>Qt-4.5 or higher</li>
</ul>
</div>
<div class="section" id="portability">
<h2><a class="toc-backref" href="#id15">Portability</a></h2>
<p>xxdiff is known to build and work on a great majority of UNIX platforms where Qt
works, including Mac OS X.</p>
</div>
</div>
<div class="section" id="external-links">
<h1><a class="toc-backref" href="#id16">External Links</a></h1>
<ul class="simple">
<li><a class="reference external" href="http://sourceforge.net/projects/xxdiff">SourceForge Project Page</a></li>
<li><a class="reference external" href="http://freshmeat.net/projects/xxdiff">Freshmeat Application Index</a></li>
<li><a class="reference external" 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 external" href="http://directory.google.com/Top/Computers/Software/File_Management/File_Comparison/">Google directory</a>,
<a class="reference external" href="http://dmoz.org/Computers/Software/File_Management/File_Comparison/">DMOZ</a></li>
<li><a class="reference external" href="http://furius.ca">Author's Homepage</a></li>
</ul>
</div>
<div class="section" id="copyright-and-license">
<h1><a class="toc-backref" href="#id17">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 external" href="COPYING">GNU General Public License</a>;</p>
</div>
<div class="section" id="author">
<h1><a class="toc-backref" href="#id18">Author</a></h1>
<p>Martin Blais <<a class="reference external" href="mailto:blais@furius.ca">blais@furius.ca</a>></p>
<!-- official sourceforge logo code snippet -->
<img alt="SourceForge Logo" src="http://sourceforge.net/sflogo.php?group_id=2198&type=1" style="width: 88px; height: 31px;" />
</div>
</div>
</body>
</html>
|