Fretwire 0.3.0
The third beta, and both of its features are about work that used to happen in a
terminal beside the app. A git worktree is now a section of the sidebar — one
you can add to, open as a tab, and remove from — and any file can be handed to
the diff or merge tool you already have set up, because Fretwire runs your
git difftool rather than reimplementing one. The DMG got a window drawn for it
along the way.
New
- Worktrees — a WORKTREES section appears in the sidebar as soon as a repository has one. Each row carries the folder, the branch it holds (or
detached at <sha>), and a lock or prunable marker; its menu is Open in New Tab · Reveal in Finder · Copy Path · Remove…, and the section header holds Add Worktree… and Prune Missing Worktrees. A worktree opens as a tab of its own, and removing one closes the tab that was showing it. The Add sheet takes an existing branch or creates a new one, and fills the folder name in as<repo>-<branch>. - A branch checked out somewhere else says where — a branch another worktree holds shows a folder marker, and its menu reads
Checked out in ~/code/app-reviewwith Open Worktree above it, rather than a Checkout that git was always going to refuse. Where a refusal does arrive — "is already used by worktree at …" — it comes with the same button instead of a dead end. So does the refusal to remove a worktree with uncommitted work, and a locked one's confirmation says out loud that the lock is what's being overridden. - Your own diff and merge tool — ⌘D on the diff pane, or Open in External Diff Tool in the staging and commit-detail menus, hands the file to
git difftool; a conflicted file gets Resolve in External Merge Tool andgit mergetool, which stages what it resolves. Both readdiff.tool/merge.toolout of your own git config, so a tool already working in your terminal needs no setting up here. Settings ▸ Git names the config line being followed, lists the tools this Mac actually has, and can override the choice for the app alone. One caveat, written there too: the tool has to wait for the editor —codewithout--waitreturns before git's temporary files can be read. - An installer window worth opening — the DMG opens on a fretboard, with the icon's own teal curve running out of the app and up into
/Applications, and the mounted volume carries the app's icon rather than a generic disk.
Fixed
- A folder whose name ends in a space —
git rev-parse --show-toplevelanswers with a path plus git's own newline, and trimming whitespace took the last character of such a name with it. Only git's terminator comes off now.
Requirements
- macOS 14 or later.
- A
git— whichever comes first on your login shell's PATH, else Apple's. With none installed at all, the Welcome screen says so once, with the command that fixes it.
Not here yet
- An interactive rebase editor. One commit at a time can be reworded, squashed or dropped; reordering a range still belongs in the terminal.
- A command palette.
During the beta
Free, for any use. Licensing starts at 1.0: free for personal projects, paid per seat for commercial use — see the EULA.
The app updates itself — each update is checked against a signature before it is applied. Settings ▸ Updates decides how much of that happens on its own. Bug reports and requests go to the issue tracker.