Skip to Content

Files

The Files tab is a root-scoped view of the repository at the open worktree. Everything is resolved relative to that root; paths outside it are rejected by the service layer, not just hidden by the interface.

The tree

  • Directories expand in place.
  • Each row shows the file name and, where it applies, the Git status of that path.
  • The pane is resizable and remembers its width per installation.
  • Ignored files do not appear in search results but can still be previewed if you reach them from the tree.

Preview

Selecting a file renders it in the preview pane:

  • Text with syntax highlighting by extension; unknown types are shown as plain text. The pane reports the file size and whether the content uses CRLF line endings.
  • Images for common raster formats, with natural-size rendering for small images rather than stretching them to fill the pane.
  • Binary files show a placeholder and their size.
  • Files above the preview cap (512 KiB read limit) are shown truncated with a notice; the file itself is not modified.

Previews are read-only. Editing happens in an external editor.

Quick open

Cmd/Ctrl + P opens the fuzzy file finder:

  • Matches tracked and untracked files by path fragment, not just prefix; ignored paths are excluded.
  • Recent files are listed first when the query is empty.
  • Enter opens the selected file in the preview; the same modal can open it in the configured external editor.

Search has two modes, set in the search field:

ModeBacked byCoverage
Namesgit ls-files --cached --others --exclude-standardTracked and untracked paths, matching on the path string
Contentsgit grep --untrackedFile contents in tracked and untracked files, with fixed-string or regex matching, case sensitivity and path filters

Ignored paths are excluded from both modes, and binary files are skipped in contents mode. git grep runs with -I, so a match inside a binary is not reported.

Search runs as a cancellable background job with a result cap. A long-running search can be stopped without closing the tab, and a capped result set says so.

File operations

OperationHow
New file / folderToolbar action in the tree
RenameRow context action
DuplicateRow context action
MoveCut and paste
DeleteBackspace / Delete, or the row action, after confirmation
Copy pathRow context action
Cut / copy / pasteCmd/Ctrl + X, C, V

Operations run through the scoped file service: symlinks are handled explicitly, path traversal is rejected, .git is never a valid target, and a name collision is reported before anything is written. Deletion removes the path from disk; it does not go through a trash folder and it does not create a recovery snapshot, so the confirmation is the only guard. A deleted tracked file then appears in Changes as a normal working-tree deletion.

External editors

The application detects installed editors and offers them in the file context menu:

Cursor, Visual Studio Code and Insiders, Windsurf, Zed, Sublime Text, Trae, IntelliJ IDEA and the other JetBrains IDEs, Xcode, Nova, BBEdit, TextMate, plus the system default handler.

The editor you pick is remembered, and lines from search or blame open at the right position where the editor’s command line supports it. Detection is by application bundle on macOS and by executable on PATH elsewhere. If an editor is installed in a non-standard place, choose the system default or open from a terminal instead.

Clipboard

Text from the preview can be copied, and the copied text preserves the file’s line endings (CRLF files copy with CRLF). Paste into a file is a normal text edit and is not available in the preview pane.

Next

  • Changes — stage what you edited.
  • Workspace — search across repositories.
  • Settings — editor and diff preferences.
마지막 업데이트