Searching history

Full text across commit messages, and filters by author, file and branch.

The history has a search field and three filters, and they combine.

Searching runs against a local index, so it answers as you type.

Searching looks through commit messages using a local SQLite full-text index that Innesta maintains inside the repository. That is what makes it fast enough to type into: the alternative is git log --grep, which reads the history from disk on every keystroke.

If the index is unavailable — not built yet, or removed — Innesta falls back to git log and the search still works, more slowly. You are not blocked by a missing cache.

The index lives in .git/innesta and is a cache in the ordinary sense of the word: deleting it costs nothing but the time to rebuild it, and it never contains anything that is not already in the repository.

Filters

  • Author — commits by one person.
  • File — commits that touched one path.
  • Branch — scope the whole history to a branch or tag, which you can also do by clicking it in the sidebar.

Spotlight

Innesta also keeps a named Spotlight index of the newest commits and of all branches, so a commit can be found from Spotlight without the app being open. Choosing a result opens Innesta at that commit.

It is on to begin with, and Show projects in Spotlight in General settings turns it off; removing a repository from the Projects list takes its entries out on their own. It is described in full under where your data goes.