The Flyway Desktop Version Control tab is gone and a new blade has appeared in its place. This post looks at the changes and what that means for a developer.
I’ve been working with Flyway Desktop for work more and more as we transition from older SSMS plugins to the standalone tool. This series looks at some tips I’ve gotten along the way.
The Version Control Tab
It’s gone. Here’s an old screenshot of what this looked like. It was one of four tabs across the top of a project. Note that this just had the title, with no information.
That’s unlike most other tools that provide VCS features, in that there usually is some status. On the tab, you can see the files to be committed, and push/pull/etc., but you have to select the tab.
We wanted to do better.
A Version Control Blade and Status Bar
We realized that version control isn’t really part of the workflow of Flyway Desktop; it’s a separate function. We also had lots of requests to help developers know there are changes in the repo to commit, push, etc.
We’ve been testing this for some time as a feature flag, which was annoying because I’d see the tab and the blade, but it released recently. I’m not sure which version got this, but it is in 7.0.3.
You can see it below, on the right side. Note that we have an arrow at the top to expand this. We also have a branch icon, a refresh, which tells you the last time something push/pull/fetch’d, and then there are down arrow (remote commits not pulled), a circle with a line (uncommitted changes), and an up arrow (commits to push).
If I select the object listed, and click Save, I’ll see this after the operation completes I have an uncommitted change. Notice the “1” in the middle of the blade.
I can expand the blade, but I can just click the one (or icon) and I see the blade expand. From here, I can add a commit message and commit this change (if I select it).
I’ll make another change, generating a migration script. Now my expansion shows 3 changes, the schema file, the migration script and the undo script.
I’ll commit these three as one item. My blade closes after this and I see a committed change to push.
I’ll generate another migration script. In this case, I now see multiple changes. I see my two new migration scripts added, and I still have a commit to push.
If I expand the blade, I can see the details. For example, on the push tab, I can see the commit and files included. For a small screen, or small window, I get a tooltip if I hover and can see the full file name and path.
If I make a change in the remote, likewise, I’ll also see a commit to pull.
I’ll push and pull (and commit) and then I’ll see a clean list nothing in my VCS blade.
Summary
This isn’t a big change, and I’d argue this makes FWD much easier to use and more comfortable for many people. Developers are less likely to have their local repo out of synch with a remote.
Try Flyway Desktop out today. If you haven’t worked with Flyway Desktop, download it today. There is a free version that organizes migrations and paid versions with many more features.
Video Walkthrough
I made a quick video showing this as well. You can watch it below, or check out all the Flyway videos I’ve added: