Knowledge

diff

Source đź“ť

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:.

Index

File comparison
Help:Diff
DIFF
Original author(s)
Douglas McIlroy
AT&T Bell Laboratories
Developer(s)
open-source
commercial
C
Operating system
Unix
Unix-like
V
Plan 9
Inferno
Platform
Cross-platform
Type
Command
License
MIT License
computing
data comparison
edit distance
Levenshtein distance
patching
binary files
patch
Unix

Text is available under the Creative Commons Attribution-ShareAlike License. Additional terms may apply.

↑