How-To's

A new way to Commit! Introducing the Commit and Repository tool windows in Rider 2019.3 EAP

In the latest Rider 2019.3 Early Access Preview (EAP) build, we’ve started experimenting with user interface and experience improvements when working with version control systems (VCS) like Git:

  • New and improved Commit tool window
  • Renamed the version control tool window to Repository
  • An in-editor diff preview (shelved changes are also previewed in the editor)

Let’s have a closer look! 

New and improved Commit tool window

After making changes to a code base, the next step is probably going to be committing (and pushing) it. We’ve introduced a new Commit tool window, shown on the left by default:

New commit tool window on the left-hand side

Having this tool window on the left gives us more vertical screen real-estate to show the changelist(s), commit description, and so on.

Personally, I like moving the Commit tool window to the left bottom (by dragging the tool window caption down). It gives me a view of the solution explorer as well as the commit tool window, but that’s of course my preference. Others may want to move it to the right-hand side, or to the bottom – feel free to experiment with what works best for you.

Commit tool window on the left bottom

Repository: the renamed version control tool window

In the bottom of Rider’s IDE window, we can now find the renamed version control tool window: Repository. Just as before, it shows us the version control history where we can search, look at details for a commit and so on.

Version Control tool window now named Repository

So why the change to “Repository”? Working with version control is more than working with just the commit log. The Repository tool window also lets us inspect GitHub Pull Requests. It lets us search and filter PR’s, displays the summary of the PR, as well as the list of commits and changed files in there.

Pull Requests from GitHub shown in Rider Repository tool window

From the pull request change list, we can click a file to show the diff. Which is a nice bridge to the next part of our version control redesign!

In-editor diff preview

Traditionally, diff previews would be shown in the tool window we were working in. So when showing a diff preview in the current changelist, the version control log or a pull request, we would be cramming two editors in an already full tool window. No more!

Rider now displays diff previews in the editor. This gives the diff preview the screen real-estate it deserves, and displays it where we expect code to be shown: in the editor.

In-editor diff gives more screen real estate to display diff results

When in the Commit tool window, we can use F7 (Next Change) to jump between changed files – no need to use the mouse there.

Note that only the diff preview is displayed in the editor. When invoking a diff manually, a separate window will still be shown – unless you use one of our experimental tweaks.

(Did I mention I seem to be doing well today when it comes to bridging topics?)

Experimental tweaks (Rider 2019.3)

We are still deciding on what some of the defaults will be (such as whether to show all diffs in the editor instead of only previews). If you would like to experiment with those, it’s possible to toggle certain features in Rider’s registry.

After opening a project, press shift shift (Search Everywhere) and search for “Registry”. Next, start typing any of the following three switches to enable or disable things:

  • show.diff.preview.as.editor.tab – toggles the in-editor diff preview
  • show.diff.as.editor.tab – shows all diffs as an editor tab
  • show.log.as.editor.tab – shows the VCS log as an editor tab

Note that there are a lot of settings, and you should not change them unless asked by support. However if you’re on Windows, I can recommend enabling windows.jumplist if you like being able to right-click the Rider taskbar icon and open another solution.

Configuration options (Rider 2020.1+)

(added to blog post April 29, 2020)

The Commit tool window can be toggled from the settings. In the settings, under Version Control | Commit, toggle Use non-modal commit interface
to switch between a separate tool window for commits, or using the classic style.

Non-modal commit window toggle

To toggle diffs in the editor, open a project, press shift shift (Search Everywhere), and search for “Registry”. Next, start typing any of the following three switches to enable or disable things:

  • show.diff.preview.as.editor.tab – toggles the in-editor diff preview
  • show.diff.as.editor.tab – shows all diffs as an editor tab

Download Rider (or higher) and try it out! Let us know your thoughts about these updates.

image description