Set automatic end-of-line normalization in Git

Set core.attributesfile to assign end-of-line normalization attributes
to various files and pathnames within the Git repository.

Set default behaviour to auto to leave it up to Git to decide if the
file content is text or binary, and if it text, to normalize line
endings to LF on file checkin.
Add fallback for gitattributes mechanism

In case the .gitattributes file is missing due to some error, setting
core.autocrlf and core.safecrlf configuration variables in ~/.gitconfig
provide a reasonable fallback mechanism. These settings were introduced
long before the .gitattributes mechanism, but it does require that
everyone working on the same project has them synchronized.

Set core.autocrlf to true to process all text files to make sure CRLF
is replaced with LF when writing that file to the object database and
turn all LF back into CRLF when writing out into the working directory.
This is the recommended setting for Windows systems. For GNU/Linux and
OS X set core.autocrlf to input to only replace CRLF with LF on checkin
and do not modify on checkout.

Set core.safecrlf to true to verify if Git can actually successfully
back out of the operation when replacing CRLF with LF, and if not, abort
the operation. This is to ensure that Git does not corrupt any files
when it mistakes a text file for a binary file or vice versa.
Treat common document formats as binary in Git

The current approach to common document formats is to set them to
diff=astextplain in .gitattributes. This configuration works fine as
long as Word and other documents have only text and tables in them.
The moment you commit documents with images or other embedded content,
the line ending conversion and diff applied to them will probably
corrupt them. Setting them to binary solves the problem.
Add Git attributes for common image formats

Making sure Git does not waste time on type-checking of common image
formats like GIF, JPG, PNG and TIFF.

Consider how to add SVG to list.
Merge feature-gitattributes into development

* feature-gitattributes:
  Add Git attributes for common image formats
  Treat common document formats as binary in Git
  Add fallback for gitattributes mechanism
  Set automatic end-of-line normalization in Git