Features
The list below summarizes the main features of DiffDog Server.
•Command-line interface. DiffDog Server runs as a service. You can run comparisons by invoking DiffDog Server from the command line interface or through executable scripts.
•Run comparisons on the server or remotely. You can compare files directly on the server machine where DiffDog Server is installed by using the DiffDog Server executable. Alternatively, you can call a comparison remotely from a client machine. The DiffDog Server installation includes a portable client executable (DiffDog Command Line Client), which can be copied to multiple machines within your organization, thus enabling you to call a running DiffDog Server remotely.
•Cross-platform. DiffDog Server and DiffDog Command Line Client run on Linux, macOS, and Windows.
•URL Comparisons. In addition to files and directories, you can also compare file or directory URLs. For example, you can compare a page like http://www.example.org/page1.html with http://www.example.org/page2.html. Combinations between URL and files are also possible, for example, http://www.example.org/page1.html with C:\page2.html.
•Three-way comparisons. In addition to standard two-side comparisons that involve a "left" side and a "right" side, you can also perform three-way comparisons (when comparing files). This is useful, for example, when two different versions exist of the same original file, and you need to cross-compare all versions.
•Word document comparisons. Comparison of Microsoft Word 2003 or later documents (.docx, .dotx) is also supported. Microsoft Word is not required to be installed in order to perform such comparisons.
•Binary, text, and XML. Depending on the kind of files you are comparing, you can choose between any of the following comparison modes: binary, text, or XML. Alternatively, you can let the application detect the comparison mode automatically based on file extension. For even more advanced needs, you can create custom rules to choose a specific mode automatically based on file extension.
•Advanced filters and comparison options. You can flexibly include or exclude files or directories from a comparison by means of filters. Additional options are available that help you deal with case-sensitive versus insensitive comparisons, ignoring files based on size or modification time, as well as various ways to treat special characters like spaces, tabs, or carriage returns.
•Comparison of database data. You can perform comparisons of recordsets originating from a database table, view, or a custom SQL query. The source databases can be of different kinds and may be local file-based databases such as SQLite or databases running on a remote database server, such as SQL Server. You can configure multiple such data comparisons by defining all the database connection details and other parameters in an .ini configuration file. You can then supply named data comparison jobs as arguments to the data-diff command and run multiple comparisons in a single call of the executable.
•Comparison of CSV files. You can perform side-by-side comparisons of tabular data from comma-separated or tab-separated values (CSV and TSV) files. You can also compare a CSV file with a database table, view or recordset.
•Integration with DiffDog desktop. In DiffDog, you can create comparison files (.filedif, .dirdif files) that store the settings for comparing two objects. If DiffDog Server runs on Windows, you can use these comparison files to repeat comparisons. This enables you to automate or integrate frequently-used comparisons into your custom scripts or processes. On Windows, any custom XML or directory filters that you have created in DiffDog can also be invoked as command line options when you run a comparison. Running database comparison files (.dbdif) is possible on Linux and macOS with limitations (see below).
•Get comparison results as text, XML, SQL, or HTML. When performing a comparison, you can choose the format in which comparison results are reported: text, XML, or SQL. The latter is applicable when the right side of the comparison is a database and it consists of SQL statements that merge differences from the left side to the right side of the comparison (INSERT, UPDATE, and DELETE statements).
Limitations
•The connection between client and server is currently unencrypted (plain HTTP).
•Running file and directory comparison files (.filedif, .dirdif) created with DiffDog is supported only on Windows. This limitation does not apply if you configure the comparison job directly in DiffDog Server.
•Running database data comparison files (.dbdif) created with DiffDog is supported only on Windows if CSV files are involved in the comparison. This limitation does not apply if you configure the comparison job directly in DiffDog Server. For the support details applicable when running database comparisons, see Supported Databases.