# Inspect a commit

Select a commit's hash or summary in repository history to read its message and
inspect the changes it made. You need read access to the repository.

The header shows the commit summary, the rest of the message, the short hash,
the author and commit date, the committer when it differs from the author, and
links to each parent commit. The code icon opens the file tree at that commit.

Below the header is the diff between the commit and its first parent, in the
same viewer used for pull request files: unified or split view, per-file
collapse, and a changed-file tree. A root commit has no parent and shows a note
instead of a diff. Very large comparisons may omit some file diffs; the page
says so when that happens.

Commit hashes in commit history, in branch and tag listings, and in the blame
gutter link to this page.

## Inspect line attribution

Open a text file from the repository's Code page and select **Blame** to see
which commit last changed each group of lines. Select a commit hash in the
gutter to open its changes. Blame uses the displayed file's exact commit and
shows syntax highlighting for supported languages. Switching between Code and
Blame keeps the code, highlighting, selection and scroll position in place;
only the attribution gutter is added or removed. Hover over a truncated
author to read the full attribution. Blame is limited to the first 2,000 lines;
a notice appears when results are truncated. If loading fails, use **Retry blame**.

Regular text files offer **Code / Blame**. Markdown files offer
**Preview / Code / Blame**, with Preview selected when opening a new Markdown
file. Code shows the Markdown source; Blame attributes those source lines.

Limits:

- The exact commit must exist in this repository; it does not have to be
  reachable from the current HEAD. Repository read permission still applies.
- Status checks are not shown. A signed commit shows a **Verified** or
  **Unverified** badge next to its summary only when your instance provides signature
  verification.
