Skip to content
  • Florian 
  • 6 min read

Major Git Repository improvements in Kaleidoscope 5.3

Kaleidoscope 5.0 added a view for Git Repositories with capabilities to open many useful git diffs. Since then, we’ve been using the repository feature extensively in our daily work, and we constantly listen to user feedback. Today, we are introducing several major improvements, including a commit history.

Before we get into details, here’s the version introduced in Kaleidoscope 5.0 and the new one, side by side:

Kaleidoscope’s view on a Git repository. Previous 5.x versions on the left, Kaleidoscope 5.3 on the right. There’s a new toolbar, groups have been reorganized for clarity, and there’s now a list of recent commits, showing you recent activity with options to explore.

Improved Working Copy Changes

The new top section shows the current status of the repository. It immediately answers these questions:

  • What is the current branch?
  • Are there uncommited changes and how many?
  • Are there unstaged and/or staged changes?
  • And of course you can immediately open a comparison between the current HEAD and the Working Copy.
Immediate overview of a repository. Double-click to compare the unstaged changes.

If the working copy is clean, you’ll immediately see that as well:

When there are no changes in the working copy.

Recent Comparisons

The section showing Recent Comparisons received a small makeover:

Recent Comparisons in a repository.
  • There is a new clear button in the header, allowing you to clear all recents of that repository with one click.
  • Changesets for specific commits that you open from within Kaleidoscope are no longer being added to Recents, assuming that you would typically not reopen them later.
  • Note that there are also context menu commands for inverting, editing and removing entries, as applicable.

Commit History

Here’s the first major new feature. You can now see a list of recent commits to any branch in your repository, sorted by date, with the latest commit on top. The current working copy branch will be shown by default. You’ll see the most important information about each commit in the row, and for each commit there are two main actions:

  1. Double-click an entry to immediately show all changes made in that commit (the changeset of that commit).
  2. Click the more button to see more details about that commit, like the entire formatted commit message.
Clicking the more (•••) button in a row shows details of a commit, along with commands to open a changeset, and more.

These and more actions are also available from the context menu.

Compare with HEAD is a new context menu command added in various places, making it really convenient to see what happened since that specific commit.

Toolbar

The Repository view also gained a toolbar. Let’s start from the right side, as the search field is related to the commit history:

Search and Filter Commit History

Using the search field, and by picking one of the two available modes, you can either filter the list of commits, or select commits matching your search in the list. Both options are useful in different scenarios, for example:

  • Use Filter mode to see only commits of a certain coworker or from a certain date.
  • Use Select mode to see commits adjacent to a certain commit hash you happen to know by selecting that commit in the list.
Want to see only commits from a specific month? Enter it in the search field and select Filter List from the menu.

Open in Finder or Terminal App

The two left items are for opening the working directory in the Finder and your preferred terminal app. BTW, we added support for the recently released Ghostty terminal.

Custom Comparison

In previous versions, this functionality could be found to be on the bottom of the Repository view. For Kaleidoscope 5.3, we moved it into a popover, putting it out of your way while also giving it more space. Note that it can be detached into a window if needed. Tear it off or use the small button in the top right. And, custom comparisons received two additions:

Custom Comparisons now allow comparing against the Working Copy, too.

Working Copy Comparisons

Using the new Working Copy option on the right side, you can easily compare any Reference (Branch, Tag, …) or Commit against the current Working Copy. You can even decide between all and only staged changes, if applicable.

Menu Filtering

Some git repositories tend to have lots of tags or branches, making it hard to choose a specific one from a huge menu. Starting with Kaleidoscope 5.3, just start typing in the Reference popup button to interactively filter the list, similar to the function popup in Xcode. There’s even regex support if needed:

Too many tags for selecting one from the menu? Use filters! Go wild with regular expressions.

Constantly reviewing changes is an important part of any development workflow. All these additions have the goal to make comparing git changes in Kaleidoscope more fun and more productive.

Lookup Git Commit

Knowing about repositories and commits, we added another neat little feature that we find useful: Window > Lookup Git Commit… brings up a small window with a text field.

Enter a unique part of a git commit hash to get information about that git, in a way familiar to any Kaleidoscope user. Also, if you happen to have a commit hash in your clipboard when bringing up that window, no step 2 is needed.

Thanks for reading that far through that post! As always, if you have feedback, ideas, requests, we love hearing from our users! Otherwise stay tuned for what we are up to next 😃