# Treat all files in this repo as binary, with no git magic updating
# line endings. Windows users contributing to Go will need to use a
# modern version of git and editors capable of LF line endings.
#
# We'll prevent accidental CRLF line endings from entering the repo
# via the git-review gofmt checks.
#
# See golang.org/issue/9281

* -text

# The builders assume the git archive *.tar.gz of the tree is under
# 25 MB but this repo is 31+ MB with all the images.
# So exclude those.
# See https://golang.org/issue/11199

*.jpg export-ignore
*.jpeg export-ignore
*.png export-ignore
*.gif export-ignore
*.pdf export-ignore
