Merge Flare Git branches, via Bitbucket

Eric WestonPosted Technical communicationLeave a Comment

Merge Flare Git branches via Bitbucket.
Info type:
Applies to: MadCap Flare version 11 and higher, when you're using the Git integration features.
Good for: When you want to use Flare's built-in integration and need to overcome the fact that merging of Git branches is not supported.
Assumes: Your remote 'master' repository is (or will be) in Atlassian's Bitbucket service.

Want to use MadCap Flare’s Git integration, but you’re frustrated by missing features for branches? Here’s a way to merge Flare Git branches.

This workaround is easy, though it won’t apply for you if you’re not using Bitbucket. That said, merging of branches is a core Git feature, so perhaps you can find a similar workaround in whatever repository system you are using.

I’m writing this post from the perspective of a sole author working freelance on Flare projects and IT that are entirely under my control at the moment.
Thus far I have not had to manage any conflicting changes — I imagine that we can manage conflicts okay within Bitbucket, but I haven’t actually tested it myself yet.

Some context

Since version 11, Flare has included Git integration features. I welcome this since, like many others, I favour Git for my version control and having support integrated directly into my writing tool is attractive. Yes, I could deal with an external arrangement for my Git version control, but I’d rather not add more tools and environments if I don’t have to.

However, I want more than the most basic integration for version control. I also want to make full use of Git’s excellent branching capabilities, so that I can develop different strands of work within a Flare project in parallel. At the least I want to have:

  • a ‘master’ branch to hold the publishable content
  • a ‘development’ branch for work in progress

The problem

Whilst Flare does allow you to create branches, it doesn’t offer any facility for you to merge them again later. Frustration reigns — what is the point of working in a development branch if you can’t merge the good stuff back into your main branch?

My solution (or workaround)

It so happens that I am using Bitbucket to store remote repositories for my Flare projects. Even at the free account level, Bitbucket offers private repositories and great features that I have found quite easy to understand and use. And it has been flawless with Flare. I find that Bitbucket just makes things easy for me.

Recently, it came up trumps again when I discovered that I can get around Flare’s inability to merge branches by doing the merge within Bitbucket. It is very easy, and an acceptable compromise for me since I don’t need to merge Flare Git branches all the time.

Merge Flare Git branches (step-by-step example)

Pre-requisites:

  • you already have your repository in Bitbucket
  • you’re ready to merge a branch you created in Flare with another branch

In this example we’ll merge a branch called develop into the main branch, called master.

  1. In your web browser, browse to the top level of your repository in Bitbucket (the Overview page for your repository).
  2. At the navigation menu on the left click Branches.
    bitbucket-repository-navigation-menu

    Repository navigation menu.

  3. Find the branch you want to merge and click on the link.
    bitbucket-branches-page

    Branches page, showing the status of existing branches.

  4. Check the destination branch is correct and adjust if necessary. Then click Merge.
    bitbucket-chosen-branch

    Page for the chosen branch, with the Merge button.

  5. In the resulting dialog box, check the details over and, when you’re ready to go for it, click Merge.
    bitbucket-merge-changes-dialog

    Merge changes dialog box.

  6. That’s it, your branch is now merged!
    bitbucket-commits-page

    Commits page, showing various details including a list of the changed files.

  7. Back in Flare, you might need to make sure everything is synced up correctly. Switch to the branch you merged into (master). Then, at the ribbon toolbar go to Source Control and then click Synchronize (in the Project group).

All done! Now you can carry on working in Flare until you need to merge again, just switch to whichever branch you need next as usual.

Over to you

Did you find this tip useful? How are you getting on with branching and merging in Flare? Do you like Bitbucket?