4302:
4161:
3712:
3734:
475:-like output: if an item is absent in the subsequence but present in the first original sequence, it must have been deleted (as indicated by the '-' marks, below). If it is absent in the subsequence but present in the second original sequence, it must have been inserted (as indicated by the '+' marks).
1233:
The special case of files that do not end in a newline is not handled. Neither the unidiff utility nor the POSIX diff standard define a way to handle this type of files. (Indeed, such files are not "text" files by strict POSIX definitions.) GNU diff and git produce "\ No newline at end of file" (or a
830:
consists of lines that have not changed between the two files and serve as a reference to locate the lines' place in a modified file and find the intended location for a change to be applied regardless of whether the line numbers still correspond. The context format introduces greater readability for
1089:
The hunk range for the original should be the sum of all contextual and deletion (including changed) hunk lines. The hunk range for the new file should be a sum of all contextual and addition (including changed) hunk lines. If hunk size information does not correspond with the number of lines in the
553:
This part of the document has stayed the same from version to version. It shouldn't be shown if it doesn't change. Otherwise, that would not be helping to compress the size of the changes. This paragraph contains text that is outdated. It will be deleted in the near future. It is important
866:
delimited by a tab character. At the beginning of each hunk are the line numbers that apply for the corresponding change in the files. A number range appearing between sets of three asterisks applies to the original file, while sets of three dashes apply to the new file. The hunk ranges specify the
567:
This is an important notice! It should therefore be located at the beginning of this document! This part of the document has stayed the same from version to version. It shouldn't be shown if it doesn't change. Otherwise, that would not be helping to compress the size of the changes. It is
464:
and we want to find a longest sequence of items that is present in both original sequences in the same order. That is, we want to find a new sequence which can be obtained from the first original sequence by deleting some items, and from the second original sequence by deleting other items. We also
291:
used in these early applications were, however, deemed unreliable. The potential usefulness of a diff tool provoked McIlroy into researching and designing a more robust tool that could be used in a variety of tasks, but perform well in the processing and size limitations of the
1349:
colordiff is a Perl wrapper for 'diff' and produces the same output but with colorization for added and deleted bits. diff-so-fancy and diff-highlight are newer analogues. "delta" is a Rust rewrite that highlights changes and the underlying code at the same time.
682:
signs (at the beginning of lines that are added, deleted or changed) indicate which file the lines appear in. Addition lines are added to the original file to appear in the new file. Deletion lines are deleted from the original file to be missing in the new file.
568:
important to spell check this document. On the other hand, a misspelled word isn't the end of the world. Nothing in the rest of this paragraph needs to be changed. Things can be added after it. This paragraph contains important new additions to this document.
190:
in that it tries to determine the smallest set of deletions and insertions to create one file from the other. The utility displays the changes in one of several standard formats, such that both humans or computers can parse the changes, and use them for
373:'s early years, common uses included comparing changes in the source of software code and markup for technical documents, verifying program debugging output, comparing filesystem listings and analyzing computer assembly code. The output targeted for
842:
can be defined by the user, even zero, but three lines is typically the default. If the context of unchanged lines in a hunk overlap with an adjacent hunk, then diff will avoid duplicating the unchanged lines and merge the hunks into a single hunk.
1364:
Utilities that compare source files by their syntactic structure have been built mostly as research tools for some programming languages; some are available as commercial tools. In addition, free tools that perform syntax-aware diff include:
1101:
If a line is modified, it is represented as a deletion and addition. Since the hunks of the original and new file appear in the same hunk, such changes would appear adjacent to one another. An occurrence of this in the example below is:
1093:
Optionally, the hunk range can be followed by the heading of the section or function that the hunk is part of. This is mainly useful to make the diff easier to read. When creating a diff with GNU diff, the heading is identified by
1465:'s fork has since expanded the repository with many of its own. One algorithm called "histogram" is generally regarded as much better than the original Myers algorithm, both in speed and quality. This is the modern version of
1306:
compares one file against two other files by reconciling two diffs. It was originally conceived by Paul Jensen to reconcile changes made by two people editing a common source. It is also used by revision control systems, e.g.
1061:
The hunk range information contains two hunk ranges. The range for the hunk of the original file is preceded by a minus symbol, and the range for the new file is preceded by a plus symbol. Each hunk range is of the format
1207:
Note that to successfully separate the file names from the timestamps, the delimiter between them is a tab character. This is invisible on screen and can be lost when diffs are copy/pasted from console/terminal screens.
686:
By default, lines common to both files are not shown. Lines that have moved are shown as added at their new location and as deleted from their old location. However, some diff tools highlight moved lines.
2938:
2832:
819:), adding those features in 2.8 BSD, released in July 1981. The context format of diff introduced at Berkeley helped with distributing patches for source code that may have been changed minimally.
1249:
Changes since 1975 include improvements to the core algorithm, the addition of useful features to the command, and the design of new output formats. The basic algorithm is described in the papers
979:) inherits the technical improvements made by the context format, but produces a smaller diff with old and new text presented immediately adjacent. Unified format is usually invoked using the "
554:
to spell check this dokument. On the other hand, a misspelled word isn't the end of the world. Nothing in the rest of this paragraph needs to be changed. Things can be added after it.
991:
program. Many projects specifically request that "diffs" be submitted in the unified format, making unified diff format the most common format for exchange between software developers.
2270:
The easiest way to start editing in diff mode is with the "vimdiff" command. This starts Vim as usual, and additionally sets up for viewing the differences between the arguments.
1346:
is a front end to diff that shows the words or phrases that changed in a text document of written language even in the presence of word-wrapping or different column widths.
317:
with the natural ability to create machine-usable "edit scripts". These edit scripts, when saved to a file, can, along with the original file, be reconstituted by
2780:
1999:
1655:
IEEE Std. 1003.1-2001 specifies traditional, "ed script", and context diff output formats; IEEE Std. 1003.1-2008 added the (by then more common) unified format.
1241:
program does not necessarily recognize implementation-specific diff output. GNU patch is, however, known to recognize git patches and act a little differently.
1300:
render side-by-side diff listings and applied change marks to printed documents, respectively. Both were developed elsewhere in Bell Labs in or before 1981.
1216:
There are some modifications and extensions to the diff formats that are used and understood by certain programs and in certain contexts. For example, some
1074:
is the number of lines the change hunk applies to for each respective file. In many versions of GNU diff, each range can omit the comma and trailing value
1044:
and is immediately followed with the line additions, line deletions, and any number of the contextual lines. The range information is surrounded by double
287:, produced line-by-line changes and even used angle-brackets (">" and "<") for presenting line insertions and deletions in the program's output. The
1917:
4396:
822:
In the context format, any changed lines are shown alongside unchanged lines before and after. The inclusion of any number of unchanged lines provides a
4198:
366:
Portability Guide issue 2 of 1987 includes diff. Context mode was added in POSIX.1-2001 (issue 6). Unified mode was added in POSIX.1-2008 (issue 7).
1227:
Some tools allow diffs for several different files to be merged into one, using a header for each modified file that may look something like this:
1029:
that contain the line differences in the file. The unchanged, contextual lines are preceded by a space character, addition lines are preceded by a
1826:
1740:
2048:
1602:
4429:
1325:
for showing the changes a patch would provide in a user interface that combines interactive editing and merging capabilities for patch files.
4795:
1506:
1234:
translated version) as a diagnostic, but this behavior is not portable. GNU patch does not seem to handle this case, while git-apply does.
2806:
1335:
to compare from two to eight files, with differences highlighted in color. While historically invoking the diff program, modern vim uses
2223:
2577:
1948:
1273:
character to delimit lines. By the 1980s, support for binary files resulted in a shift in the application's design and implementation.
1224:—specify a version number, "working copy", or any other comment instead of or in addition to a timestamp in the diff's header section.
2034:
1195:
Here, the diff output is shown with colors to make it easier to read. The diff utility does not produce colored output; its output is
954:
Here, the diff output is shown with colors to make it easier to read. The diff utility does not produce colored output; its output is
614:
Here, the diff output is shown with colors to make it easier to read. The diff utility does not produce colored output; its output is
3772:
2651:
2755:
904:
This part of the document has stayed the same from version to *************** *** 8,20 **** compress the size of the changes.
3100:
2862:
1343:
4726:
4532:
4266:
4191:
2673:
2480:
1882:
4644:
589:> This is an important > notice! It should > therefore be located at > the beginning of this > document! >
2331:
1888:
1010:
1.15, released in
January 1991. GNU diff has since generalized the context format to allow arbitrary formatting of diffs.
4760:
4634:
2301:
1621:
1479:
1695:
4597:
4435:
4377:
2257:
1511:
398:
4184:
2696:
1996:
1531:
329:
where a variety of output formats could be designed and implemented, but he found it more frugal and simpler to have
2726:
2194:
381:(SCCS) and its ability to archive revisions emerged in the late 1970s as a consequence of storing edit scripts from
252:. This research was published in a 1976 paper co-written with James W. Hunt, who developed an initial prototype of
4733:
4719:
862:
represents an unchanged line. At the beginning of the patch is the file information, including the full path and a
144:
2601:
2427:
1651:
Standard for
Information Technology—Portable Operating System Interface (POSIX) Base Specifications, Issue 7
4785:
4780:
3725:
3720:
2629:
2016:
1909:
4465:
2950:
This does indeed show that histogram diff slightly beats Myers, while patience is much slower than the others.
2057:
In git-style diffs, the "before" state of each patch refers to the initial state before modifying any files,..
1783:
593:< This paragraph contains < text that is outdated. < It will be deleted in the < near future. <
4233:
3765:
296:'s hardware. His approach to the problem resulted from collaboration with individuals at Bell Labs including
3750:
2776:
4700:
257:
3078:
4685:
4639:
4488:
4472:
3561:
3093:
1664:
1440:
3064:
2360:
1968:
1269:. The first editions of the diff program were designed for line comparisons of text files expecting the
244:
in Murray Hill, New Jersey. It was part of the 5th
Edition of Unix released in 1974, and was written by
4775:
4323:
4301:
4247:
4095:
3055:
2558:
1806:
1763:
1720:
378:
202:
is used to show the changes between two versions of the same file. Modern implementations also support
125:
3018:
2545:
Grass. Cdiff: A syntax directed Diff for C++ programs. Proceedings USENIX C++ Conf., pp. 181-193, 1992
1849:
1600:
186:
notions used for other purposes, diff is line-oriented rather than character-oriented, but it is like
4770:
4765:
4131:
4051:
3697:
3667:
3024:
1855:
220:. The output of similar file comparison utilities is also called a "diff"; like the use of the word "
50:
3003:
A generic implementation of the Myers SES/LCS algorithm with the
Hirschberg linear space refinement
4790:
4656:
4165:
3758:
3682:
2515:
2467:
2202:
1424:
1419:
port is the most current public release. spiff does not support binary files. spiff outputs to the
1312:
929:
the other hand, a misspelled word isn't the end of the world. *************** *** 22,24 ****
325:
necessary to maintain multiple versions of a file. McIlroy considered writing a post-processor for
97:
2128:
2083:
4690:
4241:
1308:
3286:
3276:
831:
humans and reliability when applying the patch, and an output which is accepted as input to the
4755:
3784:
3738:
3443:
3112:
3086:
2802:
2510:
2462:
2215:
2123:
2078:
1516:
1412:
4381:
4371:
4606:
4459:
3781:
3041:
2931:"algorithm - What's the difference between 'git diff --patience' and 'git diff --histogram'?"
1642:
1221:
527:, will recursively descend any matching subdirectories to compare files between directories.
121:
28:
1940:
240:
diff was developed in the early 1970s on the Unix operating system, which was emerging from
232:
standard specifies the behavior of the "diff" and "patch" utilities and their file formats.
4258:
4082:
3613:
2574:
1980:
1499:
1443:
187:
117:
64:
1453:
that provides an interface to many algorithms from 1998. An improved Myers algorithm with
377:
was motivated to provide compression for a sequence of modifications made to a file. The
8:
4591:
4571:
4410:
4367:
1818:
1775:
1732:
1489:
1450:
1408:
1356:
contains tools that combine, rearrange, compare and fix context diffs and unified diffs.
1200:
984:
959:
859:
619:
149:
68:
19:
This article is about the utility program. For the general topic of file comparison, see
2648:
4673:
4389:
2989:
2912:
2892:
2885:"How different are different diff algorithms in Git?: Use --histogram for code changes"
2751:
2528:
2141:
2096:
1095:
1014:
264:
132:
4216:
Years, where available, indicate the date of first stable release. Systems with names
3004:
2854:
2177:
2160:
1339:'s fork of xdiff library (LibXDiff) code, providing improved speed and functionality.
1261:
by Webb Miller and Myers. The algorithm was independently discovered and described in
182:
tool that computes and displays the differences between the contents of files. Unlike
4539:
4511:
4341:
2993:
1878:
1454:
1328:
835:
program. This intelligent behavior is not possible with the traditional diff output.
679:
605:> > This paragraph contains > important new additions > to this document.
322:
207:
2916:
2532:
2451:"Identifying the semantic and textual differences between two versions of a program"
2145:
1086:
line number of the first range; all the other values can be computed from the diff.
994:
Unified context diffs were originally developed by Wayne
Davison in August 1990 (in
4453:
3950:
3513:
3418:
3413:
2979:
2902:
2520:
2472:
2172:
2133:
2100:
2088:
1984:
1810:
1767:
1724:
1526:
1217:
1048:, and combines onto a single line what appears on two lines in the context format (
999:
701:
228:
became a generic term for calculating data difference and the results thereof. The
156:
104:
2670:
2450:
1997:
http://pubs.opengroup.org/onlinepubs/9699919799/basedefs/V1_chap03.html#tag_03_403
4680:
4207:
4146:
4038:
3872:
3692:
3636:
3541:
3342:
3245:
2700:
2677:
2655:
2633:
2581:
2562:
2501:
Yang, Wuu (July 1991). "Identifying syntactic differences between two programs".
2198:
2003:
1872:
1625:
1606:
1566:
1420:
1407:
that ignores differences in floating point calculations with roundoff errors and
850:" represents a change between lines that correspond in the two files, whereas a "
333:
be responsible for generating the syntax and reverse-order input accepted by the
245:
179:
45:
20:
2323:
4668:
4423:
4141:
4100:
4023:
3980:
3955:
3888:
3832:
3631:
3566:
3551:
3488:
3448:
3327:
3291:
3185:
3028:
2907:
2884:
2245:
1859:
1779:
1736:
1646:
1484:
675:
301:
137:
2828:
2293:
4749:
4417:
4403:
4136:
4015:
3867:
3788:
3780:
3672:
3533:
3468:
3240:
3215:
3116:
1822:
1680:
1494:
500:. The output of the command represents the changes required to transform the
490:
command is invoked from the command line, passing it the names of two files:
249:
183:
2381:
2249:
4705:
4661:
4447:
4176:
4110:
3975:
3862:
3646:
3546:
3463:
3458:
3362:
3271:
3235:
3190:
3108:
2998:
2883:
Nugroho, Yusuf
Sulistyo; Hata, Hideaki; Matsumoto, Kenichi (January 2020).
2524:
2137:
1428:
1281:
1266:
1254:
1238:
988:
832:
345:
215:
192:
2984:
2967:
2693:
2191:
1870:
1618:
4613:
4358:
4028:
3985:
3970:
3960:
3582:
3556:
3493:
3483:
3473:
3438:
3428:
3423:
3306:
3296:
3250:
3073:
2716:
1814:
1771:
1728:
1571:
1393:
203:
162:
3023:: compare two files – Shell and Utilities Reference,
2930:
2476:
4559:
4518:
3914:
3812:
3398:
3357:
3160:
3130:
2626:
2593:
2417:
2092:
1545:
1386:
1196:
1034:
955:
863:
615:
341:
297:
58:
40:
3049:
3035:
2396:
1665:
https://minnie.tuhs.org/cgi-bin/utree.pl?file=V5/usr/source/s1/diff1.c
769:, we should append two lines to this diff file, one line containing a
4651:
4565:
4504:
4105:
4090:
4005:
3990:
3893:
3857:
3827:
3822:
3817:
3687:
3641:
3621:
3518:
3498:
3453:
3301:
3225:
3210:
3195:
3180:
3175:
3170:
3165:
2069:
E. Myers (1986). "An O(ND) Difference
Algorithm and Its Variations".
1030:
1017:
as the context format, except that the original file is preceded by "
523:
will be run on each file that exists in both directories. An option,
308:
288:
272:
241:
171:
113:
24:
1411:, both of which are generally irrelevant to source code comparison.
933:
this paragraph needs to be changed. Things can be added after it.
921:
the other hand, a misspelled word isn't the end of the world.
4695:
4552:
4441:
4272:
4046:
3935:
3603:
3383:
3059:
2897:
1641:
1560:
1436:
2114:
Webb Miller; Eugene W. Myers (1985). "A File
Comparison Program".
1457:
was originally implemented (as of the final release of 2008), but
1174:
this paragraph needs to be changed. Things can be added after it.
1170:
the other hand, a misspelled word isn't the end of the world.
1082:
defaults to 1. Note that the only really interesting value is the
708:
option. The resulting edit script for this example is as follows:
4056:
3408:
3332:
1521:
1462:
1432:
1270:
1090:
hunk, then the diff could be considered invalid and be rejected.
1045:
815:) and the ability to recurse on filesystem directory structures (
471:
From a longest common subsequence it is only a small step to get
465:
want this sequence to be as long as possible. In this case it is
321:
into the modified file in its entirety. This greatly reduced the
530:
Any of the examples in the article use the following two files,
3909:
3393:
3135:
3068:
2721:
2422:
2401:
1678:
1555:
1199:. However, many tools can show the output with colors by using
958:. However, many tools can show the output with colors by using
618:. However, many tools can show the output with colors by using
363:
293:
1143:
This part of the document has stayed the same from version to
4525:
4329:
3995:
3847:
3807:
3802:
3626:
3523:
3503:
3433:
3352:
3255:
3230:
3205:
3155:
3150:
3145:
3140:
2352:
1322:
1318:
1303:
925:
compress the size of the changes. It is important to spell
838:
The number of unchanged lines shown above and below a change
268:
229:
2555:
1006:'s diff utility one month later, and the feature debuted in
4335:
4285:
4278:
4220:
are no longer maintained or have planned end-of-life dates.
4115:
4072:
4000:
3940:
3837:
3677:
3651:
3587:
3508:
3388:
3347:
3337:
3281:
3109:
1550:
1416:
1052:). The format of the range information line is as follows:
704:
can still be generated by modern versions of diff with the
221:
211:
109:
2113:
356:
newsgroups. This program modifies files using output from
4545:
3965:
3930:
3852:
3478:
3378:
3322:
3220:
1458:
1336:
1003:
867:
starting and ending line numbers in the respective file.
804:
256:. The algorithm this paper described became known as the
2575:
http://www.semanticdesigns.com/Products/SmartDifferencer
3842:
3200:
1871:
David MacKenzie; Paul Eggert; Richard
Stallman (1997).
1244:
2968:"A technique for isolating differences between files"
2649:
http://msdn.microsoft.com/en-us/library/aa302294.aspx
1688:
Computing
Science Technical Report, Bell Laboratories
2882:
791:
and the transformation will then happen when we run
2999:
A technique for isolating differences between files
1874:
Comparing and Merging Files with GNU Diff and Patch
1597:
Comparing and Merging Files with GNU Diff and Patch
1538:
998:which appeared in Volume 14 of comp.sources.misc).
1423:in standard diff format and accepts inputs in the
1105:-check this dokument. On +check this document. On
662:. Line numbers of the original file appear before
4747:
2017:"Incomplete Lines (Comparing and Merging Files)"
1251:An O(ND) Difference Algorithm and its Variations
224:" for describing the act of searching, the word
2671:http://www.alphaworks.ibm.com/tech/xmldiffmerge
2287:
2285:
1969:2.2.3 Showing Which Sections Differences Are in
1681:"An Algorithm for Differential File Comparison"
1679:James W. Hunt; M. Douglas McIlroy (June 1976).
404:In this problem, given two sequences of items:
1595:"Binary Files and Forcing Text Comparison" in
263:McIlroy's work was preceded and influenced by
4192:
3766:
3094:
2710:
2708:
4206:
2714:
2282:
2161:"Algorithms for Approximate String Matching"
2158:
1854: – Shell and Utilities Reference,
1674:
1672:
1507:History of software configuration management
1287:
987:. This output is often used as input to the
854:" represents the addition of a line, and a "
674:and those of the new file appear after. The
478:e h i q k r x y + - + - + + + +
2965:
1914:GNU Diffutils (version 3.7, 7 January 2018)
210:, since the output can be applied with the
4199:
4185:
3773:
3759:
3733:
3101:
3087:
2705:
1804:
1761:
1718:
1359:
1263:Algorithms for Approximate String Matching
757:In order to transform the content of file
2983:
2906:
2896:
2514:
2466:
2176:
2127:
2082:
1669:
1013:The format starts with the same two-line
16:Standard UNIX utility for file comparison
2291:
2068:
1910:"Detailed Description of Unified Format"
2800:
2749:
2745:
2743:
2694:http://prettydiff.com/documentation.php
2448:
2394:
2292:Brabandt, Christian (1 December 2018).
2205:. Free Documentation. Free source code.
1276:GNU diff and diff3 are included in the
1033:, and deletion lines are preceded by a
787:). Here we gave the diff file the name
307:In the context of Unix, the use of the
4748:
2826:
2226:from the original on 18 September 2019
1938:
1829:from the original on February 19, 2022
1743:from the original on February 19, 2022
773:(write) command, and one containing a
360:and has the ability to match context.
206:. The output is called a "diff", or a
4180:
3754:
3082:
2604:from the original on 21 December 2020
2415:
2260:from the original on 16 February 2020
2244:
2049:"patch.c\src - patch.git - GNU patch"
2740:
2627:https://code.google.com/p/daisydiff/
2500:
2304:from the original on 2 December 2018
1920:from the original on 18 January 2020
1245:Implementations and related programs
690:
541:
4796:Inferno (operating system) commands
2852:
2430:from the original on 1 October 2020
1786:from the original on March 21, 2020
1721:"A patch applier--YOU WANT THIS!!!"
1480:Comparison of file comparison tools
1049:
1021:" and the new file is preceded by "
632:In this traditional output format,
348:, releasing its source code on the
13:
2959:
1764:"patch version 1.2--YOU WANT THIS"
1512:Longest common subsequence problem
1147:compress the size of the changes.
1025:". Following this are one or more
1002:added unified diff support to the
399:longest common subsequence problem
283:also originated on Unix and, like
14:
4807:
3010:
2503:Software: Practice and Experience
2116:Software: Practice and Experience
1532:Software configuration management
966:
858:" the removal of a line. A blank
798:
4300:
4160:
4159:
3732:
3711:
3710:
2801:Nachbar, Daniel W (1988-02-02).
2750:Nachbar, Daniel W (1999-12-01).
1762:Larry Wall (November 29, 1984).
1539:Other free file comparison tools
1070:is the starting line number and
878:*** /path/to/original timestamp
2941:from the original on 2022-02-19
2923:
2876:
2865:from the original on 2020-07-01
2846:
2835:from the original on 2022-02-19
2820:
2809:from the original on 2012-09-10
2794:
2783:from the original on 2016-10-02
2769:
2758:from the original on 2012-09-05
2729:from the original on 2015-03-26
2682:
2660:
2638:
2616:
2586:
2567:
2548:
2539:
2494:
2483:from the original on 2010-06-12
2442:
2409:
2388:
2374:
2363:from the original on 2018-06-14
2345:
2334:from the original on 2020-08-11
2316:
2238:
2208:
2185:
2152:
2107:
2062:
2041:
2027:
2009:
1990:
1974:
1962:
1951:from the original on 2019-12-25
1932:
1902:
1891:from the original on 2015-03-31
1864:
1719:Larry Wall (November 9, 1984).
1701:from the original on 2014-12-26
1415:wrote the original version. An
1117:--- /path/to/original timestamp
1112:produces the following output:
874:produces the following output:
2889:Empirical Software Engineering
1841:
1798:
1755:
1712:
1658:
1635:
1611:
1599:. Downloaded 28 April 2007.
1585:
695:
23:. For diffs in Knowledge, see
1:
3044:Programmer's Manual, Volume 1
3025:The Single UNIX Specification
2752:"HP-UX Porting and Archiving"
2178:10.1016/S0019-9958(85)80046-2
1856:The Single UNIX Specification
1578:
1372:HTML: Daisydiff, html-differ.
1211:
882:*************** *** 1,3 ****
805:Berkeley distribution of Unix
2449:Horwitz, Susan (June 1990).
1280:package with other diff and
601:> check this document. On
597:< check this dokument. On
388:
344:created a separate utility,
7:
2690:Pretty Diff - Documentation
2416:Waugh, Tim (12 June 2020).
2395:Davison, Dan (8 May 2023).
1877:. Bristol: Network Theory.
1472:
1396:(format code and then diff)
1369:C++: zograscope, AST-based.
912:- It will be deleted in the
807:made a point of adding the
81:; 50 years ago
10:
4812:
4761:Free file comparison tools
2966:Paul Heckel (April 1978).
2908:10.1007/s10664-019-09772-z
1805:Larry Wall (May 8, 1985).
1155:-It will be deleted in the
1120:+++ /path/to/new timestamp
880:--- /path/to/new timestamp
379:Source Code Control System
235:
51:AT&T Bell Laboratories
18:
4714:
4627:
4581:
4496:
4487:
4351:
4316:
4309:
4298:
4257:
4232:
4225:
4214:
4155:
4124:
4081:
4065:
4037:
4014:
3923:
3902:
3881:
3795:
3706:
3660:
3612:
3596:
3575:
3532:
3371:
3315:
3264:
3123:
3074:JavaScript Implementation
2972:Communications of the ACM
2556:http://www.coodesoft.com/
2250:"Vim documentation: diff"
1288:Formatters and front-ends
1259:A File Comparison Program
1163:It is important to spell
941:+ important new additions
938:+ This paragraph contains
927:! check this document. On
919:! check this dokument. On
917:It is important to spell
906:- This paragraph contains
893:+ therefore be located at
871:
855:
851:
847:
816:
812:
792:
778:
761:into the content of file
267:'s comparison program on
155:
143:
131:
103:
93:
75:
57:
39:
4208:Version control software
2216:"merge (GNU RCS 5.10.0)"
2203:Free Software Foundation
2201:. Made available by the
1230:Index: path/to/file.cpp
1182:+important new additions
1179:+This paragraph contains
1168:+check this document. On
1165:-check this dokument. On
1149:-This paragraph contains
1132:+therefore be located at
1114:
1057:optional section heading
909:- text that is outdated.
876:
777:(quit) command (e.g. by
565:
551:
481:
397:is based on solving the
258:Hunt–Szymanski algorithm
4436:Software Change Manager
2384:. So Fancy. 6 May 2023.
2274:This is equivalent to:
2165:Information and Control
1617:Eric S. Raymond (ed.),
1360:Algorithmic derivatives
1152:-text that is outdated.
896:+ the beginning of this
746:therefore be located at
729:check this document. On
719:important new additions
716:This paragraph contains
580:produces the following
304:, and Harold S. Stone.
4786:Unix SUS2008 utilities
4781:Standard Unix programs
3785:command-line interface
3726:Unix SUS2008 utilities
3721:Standard Unix programs
3113:command-line interface
2525:10.1002/spe.4380210706
2272:vimdiff file1 file2
2254:vimdoc.sourceforge.net
2138:10.1002/spe.4380151102
1971:, GNU diffutils manual
1517:Microsoft File Compare
1135:+the beginning of this
887:+ This is an important
793:ed-soriginal<mydiff
519:are directories, then
27:. For other uses, see
2985:10.1145/359460.359467
2859:SourceForge FreshMeat
2827:Davide (2009-09-28).
2276:vim -d file1 file2
2159:Esko Ukkonen (1985).
1941:"Unified Diff Format"
1653:. pp. 2599–2607.
1649:(26 September 2008).
1643:IEEE Computer Society
1444:programming languages
1126:+This is an important
749:the beginning of this
313:line editor provided
4083:Software development
3614:Software development
2053:git.savannah.gnu.org
1500:Levenshtein distance
1449:LibXDiff is an LGPL
1389:: astii (AST-based).
1110:diff -u original new
872:diff -c original new
740:This is an important
468:a b c d f g j z
188:Levenshtein distance
2594:"xaizek/zograscope"
2477:10.1145/93548.93574
2455:ACM SIGPLAN Notices
2418:"twaugh/patchutils"
2294:"The power of diff"
1981:Unified Diff Format
1945:All Things Pythonic
1939:van Rossum, Guido.
1807:"patch version 1.3"
1563:(Microsoft Windows)
1490:Difference operator
1284:related utilities.
1201:syntax highlighting
1040:A hunk begins with
985:command-line option
960:syntax highlighting
944:+ to this document.
890:+ notice! It should
620:syntax highlighting
36:
2715:dontcallmedotcom.
2699:2012-07-31 at the
2676:2009-09-24 at the
2654:2009-10-27 at the
2632:2015-03-19 at the
2580:2009-10-14 at the
2573:SmartDifferencer,
2561:2011-11-29 at the
2397:"dandavison/delta"
2197:2015-03-16 at the
2192:GNU Diff utilities
2093:10.1007/BF01840446
2037:. Git. 8 May 2023.
2002:2013-04-29 at the
1624:2014-01-31 at the
1605:2017-12-19 at the
1185:+to this document.
1129:+notice! It should
1096:regular expression
826:to the patch. The
783:"w\nq\n"
582:normal diff output
41:Original author(s)
34:
4776:Data differencing
4743:
4742:
4669:Delta compression
4623:
4622:
4483:
4482:
4473:Visual SourceSafe
4326:(1986, 1990 in C)
4296:
4295:
4174:
4173:
3748:
3747:
3058:General commands
3027:, Version 4 from
2853:Libenzi, Davide.
2357:www.colordiff.org
2122:(11): 1025–1040.
1884:978-0-9541617-5-0
1858:, Version 4 from
1780:1508@sdcrdcf.UUCP
1737:1457@sdcrdcf.UUCP
1522:Microsoft WinDiff
1455:Rabin fingerprint
1379:by Microsoft and
1172:@@ -22,3 +23,7 @@
1145:@@ -8,13 +14,8 @@
1042:range information
743:notice! It should
722:to this document.
691:Output variations
629:
628:
577:diff original new
393:The operation of
323:secondary storage
300:, Elliot Pinson,
168:
167:
4803:
4771:Pattern matching
4766:Formal languages
4600:(via Git) (2014)
4594:(via Git) (2013)
4497:Free/open-source
4494:
4493:
4317:Free/open-source
4314:
4313:
4304:
4234:Free/open-source
4230:
4229:
4201:
4194:
4187:
4178:
4177:
4163:
4162:
3903:User environment
3775:
3768:
3761:
3752:
3751:
3736:
3735:
3714:
3713:
3316:User environment
3103:
3096:
3089:
3080:
3079:
3053:
3052:
3039:
3038:
3022:
3021:
2997:
2987:
2953:
2952:
2947:
2946:
2927:
2921:
2920:
2910:
2900:
2880:
2874:
2873:
2871:
2870:
2850:
2844:
2843:
2841:
2840:
2824:
2818:
2817:
2815:
2814:
2798:
2792:
2791:
2789:
2788:
2773:
2767:
2766:
2764:
2763:
2747:
2738:
2737:
2735:
2734:
2712:
2703:
2688:Cheney, Austin.
2686:
2680:
2664:
2658:
2642:
2636:
2620:
2614:
2613:
2611:
2609:
2590:
2584:
2571:
2565:
2552:
2546:
2543:
2537:
2536:
2518:
2498:
2492:
2491:
2489:
2488:
2470:
2446:
2440:
2439:
2437:
2435:
2413:
2407:
2406:
2392:
2386:
2385:
2378:
2372:
2371:
2369:
2368:
2349:
2343:
2342:
2340:
2339:
2320:
2314:
2313:
2311:
2309:
2289:
2280:
2279:
2277:
2273:
2267:
2265:
2242:
2236:
2235:
2233:
2231:
2212:
2206:
2189:
2183:
2182:
2180:
2171:(1–3): 100–118.
2156:
2150:
2149:
2131:
2111:
2105:
2104:
2086:
2066:
2060:
2059:
2045:
2039:
2038:
2031:
2025:
2024:
2013:
2007:
1994:
1988:
1985:Guido van Rossum
1978:
1972:
1966:
1960:
1959:
1957:
1956:
1936:
1930:
1929:
1927:
1925:
1906:
1900:
1899:
1897:
1896:
1868:
1862:
1853:
1852:
1845:
1839:
1838:
1836:
1834:
1802:
1796:
1795:
1793:
1791:
1759:
1753:
1752:
1750:
1748:
1716:
1710:
1709:
1707:
1706:
1700:
1685:
1676:
1667:
1662:
1656:
1654:
1639:
1633:
1615:
1609:
1589:
1527:Revision control
1403:is a variant of
1392:Multi-language:
1220:systems—such as
1218:revision control
1186:
1183:
1180:
1177:
1173:
1169:
1166:
1162:
1159:
1156:
1153:
1150:
1146:
1142:
1139:
1136:
1133:
1130:
1127:
1124:
1121:
1118:
1111:
1078:, in which case
1055:@@ -l,s +l,s @@
1024:
1020:
1000:Richard Stallman
982:
945:
942:
939:
936:
932:
928:
924:
920:
916:
913:
910:
907:
903:
900:
897:
894:
891:
888:
885:
881:
873:
857:
853:
849:
818:
814:
794:
786:
784:
781:
776:
772:
768:
707:
673:
669:
665:
656:
646:
636:
606:
602:
598:
594:
590:
578:
542:
526:
522:
499:
489:
474:
461:
457:
453:
450:
446:
443:
440:
437:
432:
428:
424:
421:
418:
415:
412:
409:
396:
384:
376:
372:
359:
336:
332:
328:
320:
316:
311:
286:
282:
278:
255:
218:
105:Operating system
89:
87:
82:
37:
33:
4811:
4810:
4806:
4805:
4804:
4802:
4801:
4800:
4791:Plan 9 commands
4746:
4745:
4744:
4739:
4710:
4681:File comparison
4619:
4577:
4479:
4347:
4336:QVCS Enterprise
4305:
4292:
4253:
4221:
4210:
4205:
4175:
4170:
4151:
4120:
4077:
4061:
4033:
4010:
3924:Text processing
3919:
3898:
3877:
3791:
3779:
3749:
3744:
3702:
3656:
3608:
3592:
3571:
3528:
3372:Text processing
3367:
3311:
3260:
3119:
3107:
3065:File comparison
3048:
3047:
3034:
3033:
3017:
3016:
3013:
3005:(C source code)
2962:
2960:Further reading
2957:
2956:
2944:
2942:
2929:
2928:
2924:
2881:
2877:
2868:
2866:
2851:
2847:
2838:
2836:
2829:"stackoverflow"
2825:
2821:
2812:
2810:
2799:
2795:
2786:
2784:
2775:
2774:
2770:
2761:
2759:
2748:
2741:
2732:
2730:
2713:
2706:
2701:Wayback Machine
2687:
2683:
2678:Wayback Machine
2665:
2661:
2656:Wayback Machine
2643:
2639:
2634:Wayback Machine
2621:
2617:
2607:
2605:
2600:. 26 May 2020.
2592:
2591:
2587:
2582:Wayback Machine
2572:
2568:
2563:Wayback Machine
2553:
2549:
2544:
2540:
2499:
2495:
2486:
2484:
2447:
2443:
2433:
2431:
2414:
2410:
2393:
2389:
2382:"diff-so-fancy"
2380:
2379:
2375:
2366:
2364:
2351:
2350:
2346:
2337:
2335:
2322:
2321:
2317:
2307:
2305:
2290:
2283:
2275:
2271:
2263:
2261:
2246:Moolenaar, Bram
2243:
2239:
2229:
2227:
2214:
2213:
2209:
2199:Wayback Machine
2190:
2186:
2157:
2153:
2112:
2108:
2067:
2063:
2047:
2046:
2042:
2033:
2032:
2028:
2015:
2014:
2010:
2004:Wayback Machine
1995:
1991:
1987:, June 14, 2006
1979:
1975:
1967:
1963:
1954:
1952:
1937:
1933:
1923:
1921:
1908:
1907:
1903:
1894:
1892:
1885:
1869:
1865:
1848:
1847:
1846:
1842:
1832:
1830:
1823:813@genrad.UUCP
1803:
1799:
1789:
1787:
1760:
1756:
1746:
1744:
1717:
1713:
1704:
1702:
1698:
1683:
1677:
1670:
1663:
1659:
1640:
1636:
1632:, version 4.4.7
1630:The Jargon File
1626:Wayback Machine
1616:
1612:
1607:Wayback Machine
1590:
1586:
1581:
1576:
1541:
1536:
1475:
1421:standard output
1362:
1292:Postprocessors
1290:
1255:Eugene W. Myers
1247:
1231:
1214:
1188:
1187:
1184:
1181:
1178:
1175:
1171:
1167:
1164:
1160:
1157:
1154:
1151:
1148:
1144:
1140:
1137:
1134:
1131:
1128:
1125:
1123:@@ -1,3 +1,9 @@
1122:
1119:
1116:
1109:
1106:
1059:
1022:
1018:
980:
969:
947:
946:
943:
940:
937:
934:
930:
926:
922:
918:
914:
911:
908:
905:
901:
898:
895:
892:
889:
886:
883:
879:
801:
782:
779:
774:
770:
766:
755:
705:
698:
693:
671:
667:
663:
654:
644:
634:
630:
607:
604:
600:
596:
592:
588:
576:
570:
569:
556:
555:
524:
520:
491:
487:
484:
479:
472:
469:
462:
459:
455:
451:
448:
444:
441:
438:
435:
433:
430:
426:
422:
419:
416:
413:
410:
407:
394:
391:
382:
374:
370:
357:
334:
330:
326:
318:
314:
309:
284:
280:
276:
253:
246:Douglas McIlroy
238:
216:
180:data comparison
85:
83:
80:
76:Initial release
48:
46:Douglas McIlroy
32:
21:File comparison
17:
12:
11:
5:
4809:
4799:
4798:
4793:
4788:
4783:
4778:
4773:
4768:
4763:
4758:
4741:
4740:
4738:
4737:
4730:
4723:
4715:
4712:
4711:
4709:
4708:
4703:
4698:
4693:
4688:
4683:
4678:
4677:
4676:
4666:
4665:
4664:
4654:
4649:
4648:
4647:
4637:
4631:
4629:
4625:
4624:
4621:
4620:
4618:
4617:
4611:
4603:
4602:
4601:
4595:
4585:
4583:
4579:
4578:
4576:
4575:
4569:
4563:
4557:
4549:
4543:
4537:
4529:
4523:
4515:
4509:
4500:
4498:
4491:
4485:
4484:
4481:
4480:
4478:
4477:
4469:
4463:
4457:
4451:
4445:
4439:
4433:
4427:
4424:Perforce Helix
4421:
4415:
4407:
4401:
4393:
4387:
4386:
4385:
4375:
4362:
4355:
4353:
4349:
4348:
4346:
4345:
4339:
4333:
4327:
4320:
4318:
4311:
4307:
4306:
4299:
4297:
4294:
4293:
4291:
4290:
4282:
4276:
4270:
4263:
4261:
4255:
4254:
4252:
4251:
4245:
4238:
4236:
4227:
4223:
4222:
4215:
4212:
4211:
4204:
4203:
4196:
4189:
4181:
4172:
4171:
4169:
4168:
4156:
4153:
4152:
4150:
4149:
4144:
4139:
4134:
4128:
4126:
4122:
4121:
4119:
4118:
4113:
4108:
4103:
4098:
4093:
4087:
4085:
4079:
4078:
4076:
4075:
4069:
4067:
4063:
4062:
4060:
4059:
4054:
4049:
4043:
4041:
4035:
4034:
4032:
4031:
4026:
4020:
4018:
4016:Shell builtins
4012:
4011:
4009:
4008:
4003:
3998:
3993:
3988:
3983:
3978:
3973:
3968:
3963:
3958:
3953:
3948:
3943:
3938:
3933:
3927:
3925:
3921:
3920:
3918:
3917:
3912:
3906:
3904:
3900:
3899:
3897:
3896:
3891:
3885:
3883:
3879:
3878:
3876:
3875:
3870:
3865:
3860:
3855:
3850:
3845:
3840:
3835:
3830:
3825:
3820:
3815:
3810:
3805:
3799:
3797:
3793:
3792:
3789:shell builtins
3778:
3777:
3770:
3763:
3755:
3746:
3745:
3743:
3742:
3730:
3729:
3728:
3723:
3707:
3704:
3703:
3701:
3700:
3698:true and false
3695:
3690:
3685:
3680:
3675:
3670:
3664:
3662:
3658:
3657:
3655:
3654:
3649:
3644:
3639:
3634:
3629:
3624:
3618:
3616:
3610:
3609:
3607:
3606:
3600:
3598:
3594:
3593:
3591:
3590:
3585:
3579:
3577:
3573:
3572:
3570:
3569:
3564:
3559:
3554:
3549:
3544:
3538:
3536:
3534:Shell builtins
3530:
3529:
3527:
3526:
3521:
3516:
3511:
3506:
3501:
3496:
3491:
3486:
3481:
3476:
3471:
3466:
3461:
3456:
3451:
3446:
3441:
3436:
3431:
3426:
3421:
3416:
3411:
3406:
3401:
3396:
3391:
3386:
3381:
3375:
3373:
3369:
3368:
3366:
3365:
3360:
3355:
3350:
3345:
3340:
3335:
3330:
3325:
3319:
3317:
3313:
3312:
3310:
3309:
3304:
3299:
3294:
3289:
3284:
3279:
3274:
3268:
3266:
3262:
3261:
3259:
3258:
3253:
3248:
3243:
3238:
3233:
3228:
3223:
3218:
3213:
3208:
3203:
3198:
3193:
3188:
3183:
3178:
3173:
3168:
3163:
3158:
3153:
3148:
3143:
3138:
3133:
3127:
3125:
3121:
3120:
3117:shell builtins
3106:
3105:
3098:
3091:
3083:
3077:
3076:
3071:
3062:
3045:
3031:
3029:The Open Group
3012:
3011:External links
3009:
3008:
3007:
3001:
2978:(4): 264–268.
2961:
2958:
2955:
2954:
2935:Stack Overflow
2922:
2875:
2845:
2819:
2793:
2779:. 1988-02-02.
2768:
2739:
2704:
2681:
2659:
2637:
2615:
2585:
2566:
2547:
2538:
2516:10.1.1.13.9377
2509:(7): 739–755.
2493:
2468:10.1.1.49.3377
2461:(6): 234–245.
2441:
2408:
2387:
2373:
2344:
2315:
2281:
2237:
2207:
2184:
2151:
2106:
2077:(2): 251–266.
2061:
2040:
2035:"git: apply.c"
2026:
2008:
1989:
1973:
1961:
1931:
1901:
1883:
1863:
1860:The Open Group
1840:
1797:
1754:
1711:
1668:
1657:
1647:The Open Group
1634:
1610:
1583:
1582:
1580:
1577:
1575:
1574:
1569:
1564:
1558:
1553:
1548:
1542:
1540:
1537:
1535:
1534:
1529:
1524:
1519:
1514:
1509:
1504:
1503:
1502:
1492:
1487:
1485:Delta encoding
1482:
1476:
1474:
1471:
1398:
1397:
1390:
1384:
1373:
1370:
1361:
1358:
1289:
1286:
1246:
1243:
1229:
1213:
1210:
1115:
1104:
1054:
973:unified format
968:
967:Unified format
965:
931:--- 23,29 ----
923:--- 14,21 ----
915:- near future.
877:
809:context format
800:
799:Context format
797:
785:>>mydiff
710:
697:
694:
692:
689:
627:
626:
586:
571:
566:
557:
552:
540:
504:file into the
483:
480:
477:
467:
434:
406:
390:
387:
302:Jeffrey Ullman
237:
234:
174:, the utility
166:
165:
159:
153:
152:
147:
141:
140:
138:Cross-platform
135:
129:
128:
107:
101:
100:
95:
91:
90:
79:June 1974
77:
73:
72:
61:
55:
54:
43:
15:
9:
6:
4:
3:
2:
4808:
4797:
4794:
4792:
4789:
4787:
4784:
4782:
4779:
4777:
4774:
4772:
4769:
4767:
4764:
4762:
4759:
4757:
4756:1974 software
4754:
4753:
4751:
4736:
4735:
4731:
4729:
4728:
4724:
4722:
4721:
4717:
4716:
4713:
4707:
4704:
4702:
4699:
4697:
4694:
4692:
4689:
4687:
4684:
4682:
4679:
4675:
4672:
4671:
4670:
4667:
4663:
4660:
4659:
4658:
4655:
4653:
4650:
4646:
4643:
4642:
4641:
4638:
4636:
4633:
4632:
4630:
4626:
4615:
4612:
4609:
4608:
4604:
4599:
4596:
4593:
4590:
4589:
4588:Azure DevOps
4587:
4586:
4584:
4580:
4573:
4570:
4567:
4564:
4561:
4558:
4555:
4554:
4550:
4547:
4544:
4541:
4538:
4535:
4534:
4530:
4527:
4524:
4521:
4520:
4516:
4513:
4510:
4507:
4506:
4502:
4501:
4499:
4495:
4492:
4490:
4486:
4475:
4474:
4470:
4467:
4464:
4461:
4458:
4455:
4452:
4449:
4446:
4443:
4440:
4437:
4434:
4431:
4428:
4425:
4422:
4419:
4416:
4413:
4412:
4408:
4405:
4404:Dimensions CM
4402:
4399:
4398:
4394:
4391:
4388:
4383:
4379:
4376:
4373:
4369:
4366:
4365:
4364:Azure DevOps
4363:
4360:
4357:
4356:
4354:
4350:
4343:
4340:
4337:
4334:
4331:
4328:
4325:
4322:
4321:
4319:
4315:
4312:
4310:Client–server
4308:
4303:
4288:
4287:
4283:
4280:
4277:
4274:
4271:
4268:
4267:The Librarian
4265:
4264:
4262:
4260:
4256:
4249:
4246:
4243:
4240:
4239:
4237:
4235:
4231:
4228:
4224:
4219:
4213:
4209:
4202:
4197:
4195:
4190:
4188:
4183:
4182:
4179:
4167:
4158:
4157:
4154:
4148:
4145:
4143:
4140:
4138:
4135:
4133:
4130:
4129:
4127:
4125:Miscellaneous
4123:
4117:
4114:
4112:
4109:
4107:
4104:
4102:
4099:
4097:
4094:
4092:
4089:
4088:
4086:
4084:
4080:
4074:
4071:
4070:
4068:
4064:
4058:
4055:
4053:
4050:
4048:
4045:
4044:
4042:
4040:
4036:
4030:
4027:
4025:
4022:
4021:
4019:
4017:
4013:
4007:
4004:
4002:
3999:
3997:
3994:
3992:
3989:
3987:
3984:
3982:
3979:
3977:
3974:
3972:
3969:
3967:
3964:
3962:
3959:
3957:
3954:
3952:
3949:
3947:
3944:
3942:
3939:
3937:
3934:
3932:
3929:
3928:
3926:
3922:
3916:
3913:
3911:
3908:
3907:
3905:
3901:
3895:
3892:
3890:
3887:
3886:
3884:
3880:
3874:
3871:
3869:
3866:
3864:
3861:
3859:
3856:
3854:
3851:
3849:
3846:
3844:
3841:
3839:
3836:
3834:
3831:
3829:
3826:
3824:
3821:
3819:
3816:
3814:
3811:
3809:
3806:
3804:
3801:
3800:
3798:
3794:
3790:
3787:programs and
3786:
3783:
3776:
3771:
3769:
3764:
3762:
3757:
3756:
3753:
3741:
3740:
3731:
3727:
3724:
3722:
3719:
3718:
3717:
3709:
3708:
3705:
3699:
3696:
3694:
3691:
3689:
3686:
3684:
3681:
3679:
3676:
3674:
3671:
3669:
3666:
3665:
3663:
3661:Miscellaneous
3659:
3653:
3650:
3648:
3645:
3643:
3640:
3638:
3635:
3633:
3630:
3628:
3625:
3623:
3620:
3619:
3617:
3615:
3611:
3605:
3602:
3601:
3599:
3597:Documentation
3595:
3589:
3586:
3584:
3581:
3580:
3578:
3574:
3568:
3565:
3563:
3560:
3558:
3555:
3553:
3550:
3548:
3545:
3543:
3540:
3539:
3537:
3535:
3531:
3525:
3522:
3520:
3517:
3515:
3512:
3510:
3507:
3505:
3502:
3500:
3497:
3495:
3492:
3490:
3487:
3485:
3482:
3480:
3477:
3475:
3472:
3470:
3467:
3465:
3462:
3460:
3457:
3455:
3452:
3450:
3447:
3445:
3442:
3440:
3437:
3435:
3432:
3430:
3427:
3425:
3422:
3420:
3417:
3415:
3412:
3410:
3407:
3405:
3402:
3400:
3397:
3395:
3392:
3390:
3387:
3385:
3382:
3380:
3377:
3376:
3374:
3370:
3364:
3361:
3359:
3356:
3354:
3351:
3349:
3346:
3344:
3341:
3339:
3336:
3334:
3331:
3329:
3326:
3324:
3321:
3320:
3318:
3314:
3308:
3305:
3303:
3300:
3298:
3295:
3293:
3290:
3288:
3285:
3283:
3280:
3278:
3275:
3273:
3270:
3269:
3267:
3263:
3257:
3254:
3252:
3249:
3247:
3244:
3242:
3239:
3237:
3234:
3232:
3229:
3227:
3224:
3222:
3219:
3217:
3214:
3212:
3209:
3207:
3204:
3202:
3199:
3197:
3194:
3192:
3189:
3187:
3184:
3182:
3179:
3177:
3174:
3172:
3169:
3167:
3164:
3162:
3159:
3157:
3154:
3152:
3149:
3147:
3144:
3142:
3139:
3137:
3134:
3132:
3129:
3128:
3126:
3122:
3118:
3115:programs and
3114:
3111:
3104:
3099:
3097:
3092:
3090:
3085:
3084:
3081:
3075:
3072:
3070:
3066:
3063:
3061:
3057:
3054: –
3051:
3046:
3043:
3040: –
3037:
3032:
3030:
3026:
3020:
3015:
3014:
3006:
3002:
3000:
2995:
2991:
2986:
2981:
2977:
2973:
2969:
2964:
2963:
2951:
2940:
2936:
2932:
2926:
2918:
2914:
2909:
2904:
2899:
2894:
2890:
2886:
2879:
2864:
2860:
2856:
2849:
2834:
2830:
2823:
2808:
2804:
2797:
2782:
2778:
2772:
2757:
2753:
2746:
2744:
2728:
2724:
2723:
2718:
2711:
2709:
2702:
2698:
2695:
2691:
2685:
2679:
2675:
2672:
2668:
2663:
2657:
2653:
2650:
2646:
2641:
2635:
2631:
2628:
2624:
2619:
2603:
2599:
2595:
2589:
2583:
2579:
2576:
2570:
2564:
2560:
2557:
2551:
2542:
2534:
2530:
2526:
2522:
2517:
2512:
2508:
2504:
2497:
2482:
2478:
2474:
2469:
2464:
2460:
2456:
2452:
2445:
2429:
2425:
2424:
2419:
2412:
2404:
2403:
2398:
2391:
2383:
2377:
2362:
2358:
2354:
2348:
2333:
2329:
2325:
2319:
2303:
2299:
2295:
2288:
2286:
2278:
2259:
2255:
2251:
2247:
2241:
2225:
2221:
2217:
2211:
2204:
2200:
2196:
2193:
2188:
2179:
2174:
2170:
2166:
2162:
2155:
2147:
2143:
2139:
2135:
2130:
2129:10.1.1.189.70
2125:
2121:
2117:
2110:
2102:
2098:
2094:
2090:
2085:
2084:10.1.1.4.6927
2080:
2076:
2072:
2065:
2058:
2054:
2050:
2044:
2036:
2030:
2022:
2018:
2012:
2006:Section 3.206
2005:
2001:
1998:
1993:
1986:
1982:
1977:
1970:
1965:
1950:
1946:
1942:
1935:
1919:
1915:
1911:
1905:
1890:
1886:
1880:
1876:
1875:
1867:
1861:
1857:
1851:
1844:
1828:
1824:
1820:
1816:
1812:
1808:
1801:
1785:
1781:
1777:
1773:
1769:
1765:
1758:
1742:
1738:
1734:
1730:
1726:
1722:
1715:
1697:
1693:
1689:
1682:
1675:
1673:
1666:
1661:
1652:
1648:
1644:
1638:
1631:
1627:
1623:
1620:
1614:
1608:
1604:
1601:
1598:
1594:
1588:
1584:
1573:
1570:
1568:
1565:
1562:
1559:
1557:
1554:
1552:
1549:
1547:
1544:
1543:
1533:
1530:
1528:
1525:
1523:
1520:
1518:
1515:
1513:
1510:
1508:
1505:
1501:
1498:
1497:
1496:
1495:Edit distance
1493:
1491:
1488:
1486:
1483:
1481:
1478:
1477:
1470:
1469:used by Vim.
1468:
1464:
1460:
1456:
1452:
1447:
1445:
1442:
1438:
1434:
1430:
1426:
1422:
1418:
1414:
1410:
1406:
1402:
1395:
1391:
1388:
1385:
1382:
1378:
1374:
1371:
1368:
1367:
1366:
1357:
1355:
1351:
1347:
1345:
1340:
1338:
1334:
1330:
1326:
1324:
1320:
1316:
1314:
1310:
1305:
1301:
1299:
1295:
1285:
1283:
1279:
1274:
1272:
1268:
1264:
1260:
1256:
1252:
1242:
1240:
1235:
1228:
1225:
1223:
1219:
1209:
1205:
1204:
1202:
1198:
1192:
1158:-near future.
1113:
1103:
1099:
1097:
1091:
1087:
1085:
1081:
1077:
1073:
1069:
1065:
1058:
1053:
1051:
1047:
1043:
1038:
1036:
1032:
1028:
1016:
1011:
1009:
1005:
1001:
997:
992:
990:
986:
978:
974:
964:
963:
961:
957:
951:
875:
868:
865:
861:
844:
841:
836:
834:
829:
825:
820:
810:
806:
796:
790:
764:
760:
753:
750:
747:
744:
741:
738:
734:
730:
727:
723:
720:
717:
714:
709:
703:
688:
684:
681:
677:
661:
657:
651:
647:
641:
637:
625:
623:
621:
617:
611:
585:
583:
579:
572:
564:
562:
558:
550:
548:
544:
543:
539:
537:
533:
528:
518:
514:
509:
507:
503:
498:
495:
476:
466:
405:
402:
400:
386:
380:
367:
365:
361:
355:
351:
347:
343:
338:
324:
312:
305:
303:
299:
295:
290:
274:
270:
266:
265:Steve Johnson
261:
259:
251:
247:
243:
233:
231:
227:
223:
219:
213:
209:
205:
201:
196:
194:
189:
185:
184:edit distance
181:
177:
173:
164:
160:
158:
154:
151:
148:
146:
142:
139:
136:
134:
130:
127:
123:
119:
115:
111:
108:
106:
102:
99:
96:
92:
78:
74:
70:
66:
62:
60:
56:
52:
47:
44:
42:
38:
30:
26:
22:
4732:
4725:
4718:
4605:
4551:
4531:
4517:
4503:
4471:
4460:Team Concert
4448:Surround SCM
4409:
4395:
4284:
4217:
3945:
3737:
3715:
3403:
2975:
2971:
2949:
2943:. Retrieved
2934:
2925:
2888:
2878:
2867:. Retrieved
2858:
2848:
2837:. Retrieved
2822:
2811:. Retrieved
2796:
2785:. Retrieved
2771:
2760:. Retrieved
2731:. Retrieved
2720:
2689:
2684:
2667:xmldiffmerge
2666:
2662:
2645:xmldiffpatch
2644:
2640:
2622:
2618:
2606:. Retrieved
2597:
2588:
2569:
2550:
2541:
2506:
2502:
2496:
2485:. Retrieved
2458:
2454:
2444:
2432:. Retrieved
2421:
2411:
2400:
2390:
2376:
2365:. Retrieved
2356:
2347:
2336:. Retrieved
2327:
2318:
2306:. Retrieved
2297:
2269:
2262:. Retrieved
2253:
2240:
2228:. Retrieved
2219:
2210:
2187:
2168:
2164:
2154:
2119:
2115:
2109:
2074:
2071:Algorithmica
2070:
2064:
2056:
2052:
2043:
2029:
2020:
2011:
1992:
1976:
1964:
1953:. Retrieved
1944:
1934:
1922:. Retrieved
1913:
1904:
1893:. Retrieved
1873:
1866:
1843:
1831:. Retrieved
1800:
1788:. Retrieved
1757:
1745:. Retrieved
1714:
1703:. Retrieved
1691:
1687:
1660:
1650:
1637:
1629:
1613:
1596:
1592:
1587:
1466:
1448:
1429:Bourne shell
1404:
1400:
1399:
1381:xmldiffmerge
1380:
1377:xmldiffpatch
1376:
1363:
1353:
1352:
1348:
1341:
1332:
1327:
1317:
1302:
1297:
1293:
1291:
1277:
1275:
1267:Esko Ukkonen
1262:
1258:
1250:
1248:
1236:
1232:
1226:
1215:
1206:
1194:
1190:
1189:
1108:The command
1107:
1100:
1092:
1088:
1083:
1079:
1075:
1071:
1067:
1063:
1060:
1056:
1041:
1039:
1027:change hunks
1026:
1012:
1007:
995:
993:
976:
972:
970:
953:
949:
948:
884:--- 1,9 ----
870:The command
869:
845:
839:
837:
827:
823:
821:
808:
802:
788:
762:
758:
756:
751:
748:
745:
742:
739:
736:
732:
728:
725:
721:
718:
715:
712:
699:
685:
680:greater-than
659:
653:
649:
643:
639:
633:
631:
613:
609:
608:
581:
575:
574:The command
573:
560:
559:
546:
545:
535:
531:
529:
516:
512:
510:
505:
501:
496:
493:
485:
470:
463:
403:
392:
368:
362:
353:
349:
339:
306:
262:
239:
225:
204:binary files
199:
197:
175:
169:
59:Developer(s)
4674:Interleaved
4614:Plastic SCM
4582:Proprietary
4489:Distributed
4359:AccuRev SCM
4352:Proprietary
4259:Proprietary
4047:ip/ipconfig
3796:File system
3124:File system
2891:: 790–823.
2554:Compare++,
2353:"colordiff"
2328:www.gnu.org
2021:www.gnu.org
1815:net.sources
1772:net.sources
1729:net.sources
1572:Pretty Diff
1394:Pretty Diff
1004:GNU Project
899:+ document!
696:Edit script
638:stands for
354:net.sources
350:mod.sources
198:Typically,
163:MIT License
65:open-source
4750:Categories
4727:Comparison
4701:Repository
4560:GNU Bazaar
4519:Code Co-op
4342:Subversion
4226:Local only
4218:in italics
4039:Networking
3716:Categories
2945:2020-06-28
2898:1902.02467
2869:2020-06-28
2855:"LibXDiff"
2839:2013-06-16
2813:2013-06-16
2803:"Man page"
2787:2013-06-16
2762:2013-06-13
2733:2013-06-16
2487:2017-11-01
2367:2018-06-14
2338:2020-09-12
2230:22 January
1955:2020-01-29
1924:29 January
1895:2015-03-17
1705:2015-05-06
1591:MacKenzie
1579:References
1409:whitespace
1387:JavaScript
1354:Patchutils
1222:Subversion
1212:Extensions
1197:plain text
1138:+document!
1098:matching.
1035:minus sign
956:plain text
864:time stamp
616:plain text
342:Larry Wall
298:Alfred Aho
289:heuristics
250:James Hunt
94:Written in
71:developers
69:commercial
4652:Changeset
4566:Mercurial
4505:BitKeeper
4418:Integrity
4390:ClearCase
4066:Searching
3882:Processes
3576:Searching
3265:Processes
2994:207683976
2777:"SPIFF 1"
2623:DaisyDiff
2511:CiteSeerX
2463:CiteSeerX
2324:"gnu.org"
2124:CiteSeerX
2079:CiteSeerX
1811:Newsgroup
1768:Newsgroup
1725:Newsgroup
1331:provides
1278:diffutils
1031:plus sign
752:document!
702:ed script
676:less-than
603:24a26,29
591:11,15d16
389:Algorithm
340:In 1984,
337:command.
279:program.
273:Mike Lesk
242:Bell Labs
172:computing
114:Unix-like
25:Help:Diff
4720:Category
4696:Monorepo
4635:Baseline
4628:Concepts
4607:TeamWare
4598:Services
4572:Monotone
4553:GNU arch
4442:StarTeam
4432:(1980s?)
4384:) (2014)
4378:Services
4374:) (2005)
4273:Panvalet
4166:Category
3936:basename
3384:basename
2939:Archived
2917:59608676
2863:Archived
2833:Archived
2807:Archived
2781:Archived
2756:Archived
2727:Archived
2697:Archived
2674:Archived
2652:Archived
2630:Archived
2602:Archived
2578:Archived
2559:Archived
2533:10853673
2481:Archived
2428:Archived
2361:Archived
2332:Archived
2302:Archived
2258:Archived
2224:Archived
2195:Archived
2146:15489614
2000:Archived
1949:Archived
1918:Archived
1889:Archived
1827:Archived
1784:Archived
1741:Archived
1696:Archived
1622:Archived
1603:Archived
1561:WinMerge
1473:See also
1467:LibXDiff
1437:Modula-2
1413:Bellcore
1383:for IBM.
1046:at signs
1008:GNU diff
759:original
547:original
532:original
513:original
502:original
494:original
458:k r x y
214:program
193:patching
161:Plan 9:
133:Platform
63:Various
4454:Synergy
4438:(1970s)
4406:(1980s)
4275:(1970s)
4142:fortune
4057:netstat
4052:ip/ping
3981:strings
3489:strings
3409:dirname
3333:logname
3282:crontab
3056:Inferno
3050:diff(1)
3036:diff(1)
2717:"spiff"
2608:27 June
2434:28 June
2298:Vimways
2220:gnu.org
2101:6996809
1833:May 11,
1819:Usenet:
1813::
1790:May 11,
1776:Usenet:
1770::
1747:May 11,
1733:Usenet:
1727::
1463:libgit2
1451:library
1433:Fortran
1333:vimdiff
1313:merging
1271:newline
1257:and in
996:unidiff
977:unidiff
828:context
824:context
731:. 11,15
660:changed
650:deleted
236:History
157:License
150:Command
126:Inferno
86:1974-06
84: (
4657:Commit
4640:Branch
4616:(2006)
4610:(1992)
4592:Server
4574:(2003)
4568:(2005)
4562:(2005)
4556:(2001)
4548:(2005)
4542:(2007)
4540:Fossil
4536:(2002)
4528:(2002)
4522:(1997)
4514:(2017)
4512:Breezy
4508:(2000)
4476:(1994)
4468:(2003)
4462:(2008)
4456:(1990)
4450:(2002)
4444:(1995)
4426:(1995)
4420:(2001)
4414:(1984)
4400:(1994)
4392:(1992)
4368:Server
4361:(2002)
4344:(2000)
4338:(1998)
4332:(1998)
4289:(1991)
4281:(1985)
4269:(1969)
4250:(1973)
4244:(1982)
4164:
3910:passwd
3782:Plan 9
3469:printf
3394:csplit
3136:chattr
3069:Curlie
3060:Manual
3042:Plan 9
2992:
2915:
2805:. UK.
2754:. UK.
2722:GitHub
2598:GitHub
2531:
2513:
2465:
2423:GitHub
2402:GitHub
2144:
2126:
2099:
2081:
1881:
1821:
1778:
1735:
1619:"diff"
1593:et al.
1556:tkdiff
1311:, for
1298:diffmk
1066:where
1015:header
789:mydiff
780:printf
765:using
624:
595:17c18
587:0a1,6
508:file.
364:X/Open
294:PDP-11
248:, and
122:Plan 9
4691:Merge
4662:Gated
4645:Trunk
4526:Darcs
4466:Vault
4380:(via
4370:(via
4330:CVSNT
4147:sleep
4111:strip
3996:troff
3976:spell
3873:touch
3863:split
3848:mkdir
3808:chgrp
3803:chmod
3693:sleep
3647:strip
3627:ctags
3562:unset
3542:alias
3524:xargs
3504:troff
3464:patch
3459:paste
3434:iconv
3363:write
3353:uname
3256:umask
3246:touch
3236:split
3231:rmdir
3206:mkdir
3191:fuser
3156:cksum
3151:chgrp
3146:chown
3141:chmod
2990:S2CID
2913:S2CID
2893:arXiv
2529:S2CID
2308:1 May
2264:1 May
2142:S2CID
2097:S2CID
1699:(PDF)
1684:(PDF)
1401:spiff
1375:XML:
1344:Wdiff
1323:Ediff
1319:Emacs
1304:Diff3
1294:sdiff
1282:patch
1265:, by
1239:patch
1050:above
989:patch
860:space
833:patch
640:added
492:diff
482:Usage
346:patch
281:Proof
277:proof
269:GECOS
230:POSIX
217:patch
208:patch
178:is a
4734:List
4686:Fork
4533:DCVS
4430:SCLM
4411:DSEE
4397:CMVC
4382:TFVC
4372:TFVC
4286:QVCS
4279:PVCS
4248:SCCS
4116:yacc
4073:grep
4029:test
4024:echo
4001:uniq
3986:tail
3971:sort
3961:join
3946:diff
3941:comm
3889:kill
3838:gzip
3833:file
3739:List
3678:expr
3652:yacc
3637:make
3588:grep
3583:find
3567:wait
3557:test
3552:echo
3509:uniq
3494:tail
3484:sort
3474:read
3449:more
3439:join
3429:head
3424:fold
3404:diff
3389:comm
3348:tput
3343:talk
3338:mesg
3328:exit
3307:time
3297:nice
3292:kill
3251:type
3186:file
3110:Unix
3019:diff
2610:2020
2436:2020
2310:2020
2266:2020
2232:2021
1926:2020
1879:ISBN
1850:diff
1835:2015
1792:2015
1749:2015
1567:meld
1551:comm
1461:and
1441:Lisp
1439:and
1417:HPUX
1405:diff
1342:GNU
1321:has
1296:and
1237:The
1191:Note
975:(or
971:The
950:Note
840:hunk
803:The
724:. 17
678:and
658:for
652:and
648:for
610:Note
599:---
534:and
521:diff
515:and
488:diff
486:The
473:diff
395:diff
383:diff
371:diff
358:diff
352:and
331:diff
327:diff
315:diff
285:diff
271:and
254:diff
226:diff
222:grep
212:Unix
200:diff
176:diff
145:Type
110:Unix
67:and
35:diff
29:DIFF
4706:Tag
4546:Git
4324:CVS
4242:RCS
4137:cal
4101:lex
4096:hoc
3966:sed
3956:eqn
3931:awk
3915:who
3868:tee
3853:pwd
3813:cmp
3673:cal
3632:lex
3604:man
3479:sed
3399:cut
3379:awk
3358:who
3323:env
3241:tee
3221:pwd
3216:pax
3161:cmp
3131:cat
3067:at
2980:doi
2903:doi
2521:doi
2473:doi
2173:doi
2134:doi
2089:doi
1983:by
1546:cmp
1459:git
1337:git
1329:Vim
1309:RCS
1253:by
1064:l,s
1023:+++
1019:---
846:A "
763:new
700:An
561:new
536:new
517:new
511:If
506:new
497:new
369:In
275:'s
170:In
4752::
4132:bc
4106:nm
4091:ar
4006:wc
3991:tr
3951:ed
3894:ps
3858:rm
3843:ls
3828:du
3823:dd
3818:cp
3688:od
3683:lp
3668:bc
3642:nm
3622:ar
3547:cd
3519:wc
3514:vi
3499:tr
3454:nl
3444:m4
3419:ex
3414:ed
3302:ps
3287:fg
3277:bg
3272:at
3226:rm
3211:mv
3201:ls
3196:ln
3181:df
3176:du
3171:dd
3166:cp
2988:.
2976:21
2974:.
2970:.
2948:.
2937:.
2933:.
2911:.
2901:.
2887:.
2861:.
2857:.
2831:.
2742:^
2725:.
2719:.
2707:^
2692:.
2669:,
2647:,
2625:,
2596:.
2527:.
2519:.
2507:21
2505:.
2479:.
2471:.
2459:25
2457:.
2453:.
2426:.
2420:.
2399:.
2359:.
2355:.
2330:.
2326:.
2300:.
2296:.
2284:^
2268:.
2256:.
2252:.
2248:.
2222:.
2218:.
2169:64
2167:.
2163:.
2140:.
2132:.
2120:15
2118:.
2095:.
2087:.
2073:.
2055:.
2051:.
2019:.
1947:.
1943:.
1916:.
1912:.
1887:.
1825:.
1817:.
1809:.
1782:.
1774:.
1766:.
1739:.
1731:.
1723:.
1694:.
1692:41
1690:.
1686:.
1671:^
1645:;
1628:,
1446:.
1435:,
1431:,
1427:,
1315:.
1193::
1037:.
983:"
981:-u
952::
817:-r
813:-c
795:.
767:ed
754:.
711:24
706:-e
642:,
612::
584::
563::
549::
538::
525:-r
454:i
447:e
429:q
425:h
401:.
385:.
375:ed
335:ed
319:ed
310:ed
260:.
195:.
124:,
120:,
116:,
112:,
4200:e
4193:t
4186:v
3774:e
3767:t
3760:v
3102:e
3095:t
3088:v
2996:.
2982::
2919:.
2905::
2895::
2872:.
2842:.
2816:.
2790:.
2765:.
2736:.
2612:.
2535:.
2523::
2490:.
2475::
2438:.
2405:.
2370:.
2341:.
2312:.
2234:.
2181:.
2175::
2148:.
2136::
2103:.
2091::
2075:1
2023:.
1958:.
1928:.
1898:.
1837:.
1794:.
1751:.
1708:.
1425:C
1203:.
1176:+
1161:-
1141:+
1084:l
1080:s
1076:s
1072:s
1068:l
962:.
935:+
902:+
856:-
852:+
848:!
811:(
775:q
771:w
737:a
735:0
733:d
726:c
713:a
672:c
670:/
668:d
666:/
664:a
655:c
645:d
635:a
622:.
460:z
456:j
452:g
449:f
445:d
442:c
439:b
436:a
431:z
427:j
423:g
420:f
417:d
414:c
411:b
408:a
118:V
98:C
88:)
53:)
49:(
31:.
Text is available under the Creative Commons Attribution-ShareAlike License. Additional terms may apply.