Skip to content

Commit

Permalink
Merge branch 'jk/diff-driver-binary-doc' into maint
Browse files Browse the repository at this point in the history
* jk/diff-driver-binary-doc:
  docs: explain diff.*.binary option
  • Loading branch information
Junio C Hamano committed Jan 19, 2011
2 parents 8a59702 + ab43561 commit ae830c2
Showing 1 changed file with 33 additions and 0 deletions.
33 changes: 33 additions & 0 deletions Documentation/gitattributes.txt
Original file line number Diff line number Diff line change
Expand Up @@ -574,6 +574,39 @@ and now produces better output), you can remove the cache
manually with `git update-ref -d refs/notes/textconv/jpg` (where
"jpg" is the name of the diff driver, as in the example above).

Marking files as binary
^^^^^^^^^^^^^^^^^^^^^^^

Git usually guesses correctly whether a blob contains text or binary
data by examining the beginning of the contents. However, sometimes you
may want to override its decision, either because a blob contains binary
data later in the file, or because the content, while technically
composed of text characters, is opaque to a human reader. For example,
many postscript files contain only ascii characters, but produce noisy
and meaningless diffs.

The simplest way to mark a file as binary is to unset the diff
attribute in the `.gitattributes` file:

------------------------
*.ps -diff
------------------------

This will cause git to generate `Binary files differ` (or a binary
patch, if binary patches are enabled) instead of a regular diff.

However, one may also want to specify other diff driver attributes. For
example, you might want to use `textconv` to convert postscript files to
an ascii representation for human viewing, but otherwise treat them as
binary files. You cannot specify both `-diff` and `diff=ps` attributes.
The solution is to use the `diff.*.binary` config option:

------------------------
[diff "ps"]
textconv = ps2ascii
binary = true
------------------------

Performing a three-way merge
~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Expand Down

0 comments on commit ae830c2

Please sign in to comment.