X-Git-Url: https://git.tokkee.org/?a=blobdiff_plain;ds=sidebyside;f=Documentation%2Fdiff-format.txt;h=d1d0d2d3dc8760a8030313de3dd14a942d0fc2bf;hb=a489352e3d1d861237729385f9afc5950bcfa6a0;hp=424e75a1c2d4747226ac1b55caac90b544f8f273;hpb=215a7ad1ef790467a4cd3f0dcffbd6e5f04c38f7;p=git.git diff --git a/Documentation/diff-format.txt b/Documentation/diff-format.txt index 424e75a1c..d1d0d2d3d 100644 --- a/Documentation/diff-format.txt +++ b/Documentation/diff-format.txt @@ -1,8 +1,8 @@ The output format from "git-diff-index", "git-diff-tree" and "git-diff-files" are very similar. -These commands all compare two sets of things; what are -compared are different: +These commands all compare two sets of things; what is +compared differs: git-diff-index :: compares the and the files on the filesystem. @@ -46,7 +46,7 @@ That is, from the left to the right: . path for "dst"; only exists for C or R. . an LF or a NUL when '-z' option is used, to terminate the record. - is shown as all 0's if new is a file on the filesystem + is shown as all 0's if a file is new on the filesystem and it is out of sync with the cache. Example: @@ -55,6 +55,11 @@ Example: :100644 100644 5be4a4...... 000000...... M file.c ------------------------------------------------ +When `-z` option is not used, TAB, LF, and backslash characters +in pathnames are represented as `\t`, `\n`, and `\\`, +respectively. + + Generating patches with -p -------------------------- @@ -62,8 +67,7 @@ When "git-diff-index", "git-diff-tree", or "git-diff-files" are run with a '-p' option, they do not produce the output described above; instead they produce a patch file. -The patch generation can be customized at two levels. This -customization also applies to "git-diff-helper". +The patch generation can be customized at two levels. 1. When the environment variable 'GIT_EXTERNAL_DIFF' is not set, these commands internally invoke "diff" like this: @@ -92,7 +96,7 @@ For a path that is added, removed, or modified, where: -file:: are files GIT_EXTERNAL_DIFF can use to read the - contents of , + contents of , -hex:: are the 40-hexdigit SHA1 hashes, -mode:: are the octal representation of the file modes. @@ -107,7 +111,7 @@ For a path that is unmerged, 'GIT_EXTERNAL_DIFF' is called with 1 parameter, . -Git specific extension to diff format +git specific extension to diff format ------------------------------------- What -p option produces is slightly different from the @@ -122,12 +126,11 @@ The `a/` and `b/` filenames are the same unless rename/copy is involved. Especially, even for a creation or a deletion, `/dev/null` is _not_ used in place of `a/` or `b/` filenames. + -When rename/copy is involved, `file1` and `file2` shows the +When rename/copy is involved, `file1` and `file2` show the name of the source file of the rename/copy and the name of the file that rename/copy produces, respectively. -2. It is followed by extended header lines that are one or - more of: +2. It is followed by one or more extended header lines: old mode new mode @@ -139,3 +142,7 @@ the file that rename/copy produces, respectively. rename to similarity index dissimilarity index + index .. + +3. TAB, LF, and backslash characters in pathnames are + represented as `\t`, `\n`, and `\\`, respectively.