File view and blame
In Fox Git, viewing files is a first-class feature. Select a file in Explorer (⌘1) to preview it read-only: syntax highlighting, line numbers, search, and copy all work, but nothing is written to disk. The file view has two modes, Preview and History, and blame is layered on top of the preview.
Inline blame
The end of the cursor line shows author, relative time · commit summary. You can hover it to open the same commit card as the blame gutter.
Blame gutter
Open the blame gutter with the Blame toggle in the title bar or from the context menu. It scrolls with the code and renders only visible lines:
- each line shows a short SHA colored by commit, the author's initials, the author, and the relative time;
- consecutive lines from the same commit keep only the color bar, so block boundaries stand out;
- clicking reveals the commit in the history graph.
The context menu can turn on "ignore whitespace changes" (equivalent to git blame -w), so commits that only touched indentation or spaces no longer hide the real author. Uncommitted lines are marked separately.
Hover card
Inline blame and the blame gutter share one card showing the author, email, relative and absolute time, the full commit message, and a copyable SHA, with:
- View change: open file history with that commit selected;
- Line history: follow the history of the current line;
- Reveal in graph: jump to History with that commit selected.
Context menu
Right-click a line number or code to show the blame gutter, ignore whitespace changes, view the history of line N, the history of the selection, or the file history. For committed lines you can also view the change, reveal it in the graph, and copy the SHA.
File history
In History mode, the left side lists the file's commits (using git log --follow, with pre-rename paths noted), and the right side shows the diff of the file in that commit against its first parent. Double-click or choose "Reveal in graph" to jump to the main History view.
Range history
Select some code and the title bar shows "Range history L a–b"; you can also start it from the context menu or the hover card. Fox Git follows the range with git log -L, and the list shows its line range in every commit — even after the code moved or the file was renamed. Selecting a commit scrolls the diff to that range and selects it.