BlameServlet: Honor .git-blame-ignore-revs

Skip bulk reformatting and other mechanical revisions during blame,
attributing lines to the last meaningful change.

If .git-blame-ignore-revs exists at the root of the repository in the
tree of the revision being blamed, its listed revisions are ignored
when computing blame. If the file is missing, too large or cannot be
read, blame ignores no revisions instead of failing the request.

Both the HTML and the JSON blame views honor the file. BlameCacheImpl
supports ignored revisions and includes them in its cache key.

Change-Id: I9290cb31e3793e1e72e210b9c841a8508fe92046
2 files changed
tree: ce5fb26a99578d7d8c53f75cadd69f3ac32de266
  1. .settings/
  2. Documentation/
  3. java/
  4. javatests/
  5. lib/
  6. modules/
  7. resources/
  8. tools/
  9. .bazelignore
  10. .bazelrc
  11. .bazelversion
  12. .gitignore
  13. .gitmodules
  14. .mailmap
  15. .zuul.yaml
  16. BUILD
  17. COPYING
  18. external_deps.lock.json
  19. fake_pom_deploy.xml
  20. MODULE.bazel
  21. MODULE.bazel.lock
  22. navbar.md
  23. README.md
  24. version.bzl
README.md

Gitiles - A simple JGit repository browser

Gitiles is a simple repository browser for Git repositories, built on JGit. Its guiding principle is simplicity: it has no formal access controls, no write access, no fancy Javascript, etc.

Gitiles automatically renders *.md Markdown files into HTML for simplified documentation. Refer to the Markdown documentation for details.

Configuration

Gitiles is configurable in a git-style configuration file named gitiles.config. Refer to the configuration documentation for details.

Bugs

Use gerrit's issue tracker to file bugs.

Contributing to Gitiles

Please refer to the Developer Guide.