🏷️ FinderGit 0.31.0 β€” every tag, every release, and which side each one is actually on

🏷️ FinderGit 0.31.0 is out β€” and this one is about a quiet lie every Git tool tells you.

When you list your tags, you get the ones on your disk. Not the ones on the remote. So:

  • a tag you cut this morning and never pushed looks exactly like one everybody has 😡

  • a tag a colleague pushed an hour ago just isn't there, and nothing tells you to look

The new Release tab puts that difference on screen. Every tag, paired with the release cut from it, side by side β€” and a badge on every row: on both, local only, not fetched.

The new Release tab: 46 tags on the left, 45 releases on the right, presence badges on every row.

The new Release tab: 46 tags on the left, 45 releases on the right, presence badges on every row.

The buttons follow the badge instead of being drawn regardless πŸ‘‡

  • Push shows up where there's something to push

  • Fetch shows up where there's something to bring down

  • Neither is drawn where pressing it would do literally nothing

One press fetches the whole backlog.

πŸ”₯ And you can act on many at once. ⇧-click, ⌘-click, then push / delete locally / delete on remote. Ten pushes where three fail tell you which three and what Git said about each β€” "already exists" and "denied" are different problems. Stop ends a run, and whatever was never attempted is reported as exactly that, not as a failure.

⚠️ My favourite bit, because I had to actually go and measure it instead of guessing: deleting a tag on GitHub does not delete its release. It turns it into a draft β€” which disappears from your public releases page β€” and pushing the tag back does NOT bring it back. The dialog used to hedge with "the release might survive", which is an admission of ignorance wearing a warning's clothes. Now it tells you which case you're in, and when it genuinely can't know, it says that instead 🀷

Also in 0.31.0:

🌳 Worktrees are repositories now. A linked worktree shows up in the browser with its own status, both Overviews count it, and the Branches tab lists every worktree and the branch it's holding.

🎨 A detail panel you can read. The tab strip was nine coloured pills fighting each other, in a box that sat apart from the panel below it. Now the selected tab is filled with the colour its panel starts from, so tab and content read as one surface β€” and the order follows how you actually work.

The redesigned tab strip β€” the selected tab and the panel below it are one surface now.

The redesigned tab strip β€” the selected tab and the panel below it are one surface now.

🌐 189 user-facing strings had never reached the translation catalogue, so they stayed English in every language while coverage read a cheerful 100%. Which was correct on its own terms β€” a string that never became a key can't be reported missing πŸ™ƒ They're in now, and translated.

Free Β· universal binary Β· macOS 15+ Β· signed and notarized.

πŸ‘‰ Try it / see what's new:

What's the tag mess in your repos β€” unpushed ones, or ones you never fetched? Genuinely curious which way it goes πŸ‘€

18 views

Add a comment

Replies

Best

the badges are what people will notice first, but the button rule is the part worth naming. a control drawn regardless of state stops carrying information, so you go and check git anyway. only drawing it where pressing it does something is the actual feature here.

Β yep, "stops carrying information" says it better than my own release notes did. the cost is that the menu has no fixed shape, so you read it every time instead of reaching. worth it, but real...

Β that tradeoff sounds right to me. muscle memory only pays off when the menu holds still, and yours cannot. glad the phrase was useful