GitLab and Bitbucket, with nothing to set up
FinderGit already read GitHub with your own credentials and Codeberg with none at all. It now reads GitLab and Bitbucket the same way Codeberg is read — anonymously — so a folder of clones from any of the four fills in its columns on its own.
Open a folder with a GitLab project in it and the Issues, Pull Requests and Stars columns populate. No account to connect, no token to paste. The Issues and Pull Requests tabs work there too, with labels, authors, drafts and state — merge requests included, since that is what GitLab calls them. The Overview tab fills in description, stars, forks, topics and the latest release, and the fork badge names the repository a fork came from.
GitLab projects nested in subgroups — group/team/project — are recognised as the one repository they are, rather than being skipped.
Bitbucket works the same way for pull requests, with the full comment thread in the preview, inline review notes included.
What each forge can honestly answer
The interesting part of adding two forges is what they refuse, and this release is careful about it in a way that is visible on screen:
- Bitbucket has no issue tracker any more. Its API was retired in August 2026, so the Issues tab says so and the Issues column stays empty on Bitbucket repositories — not zero. An empty cell is the truth; a zero would be a claim about a tracker that no longer exists.
- Bitbucket has no stars. The closest number it keeps is watchers, which appear on the Overview under their own name rather than borrowed into a column headed Stars.
- A fork is never called up to date unless somebody measured it. Only GitHub reports how far a fork trails its upstream. On the other three the banner now says the drift is not available there, instead of showing a green check nobody earned — which is what it used to do.
- GitLab shows comments only to a signed-in user, even on public projects, so the preview says so rather than failing.
The same rule now runs through the columns generally: a count that could not be obtained shows nothing rather than zero, whatever the reason — a forge that has no such concept, a header the API omits past ten thousand results, or a request refused by a rate limit.
Also in this release
- Comment threads show the right faces. An author's picture comes from the forge the repository actually lives on, so the same username on two different forges is no longer drawn as the same person.
- The sidebar filters gain GitLab and Bitbucket beside GitHub and Codeberg, each with its count.
Known limits
- Only the hosted services are recognised. A self-hosted GitLab or Bitbucket Server remote is treated as a repository with no forge, and its columns stay empty.
- Bitbucket allows an anonymous caller 60 requests an hour, and a repository row costs three of them. Roughly twenty Bitbucket clones exhaust the hour on a single paint; the cells then wait and fill in later. GitLab is generous by comparison and Codeberg has never been a problem.
- Private repositories on GitLab and Bitbucket are invisible without an account — both answer "not found" to an anonymous caller, exactly as they do for a repository that does not exist.
Signing in per forge would lift most of these; it is the next thing in this area.
Under the hood
Every capability above was measured against the live APIs rather than read off documentation, and the numbers are in the pull request. The release also carries a fix to the branch-pruning script the release pipeline runs, which could delete a local branch whose only copy of some work was local.
Verify this download
Compare the checksum of the file you downloaded:
shasum -a 256 FinderGit-0.30.0.dmg
It must print exactly:
7ad3fa9769086afc379dabc13a49b62f45f4a062a184d71aaf80c54d70248961
The DMG is also signed with an Apple Developer ID and notarized by Apple, which you can confirm without installing it:
spctl -a -vv -t open --context context:primary-signature FinderGit-0.30.0.dmg
That reports source=Notarized Developer ID for a genuine build.