Branch based workflows simplified

By on October 30, 2013

Bitbucket has just made one of the key strengths of Git – branching – accessible to all users, new or experienced. From the repository header, you can now quickly create a branch and take advantage of feature-based workflows that Git opens up.

New Repository Header

In a single click, Bitbucket will create a new branch for you with the option to choose where you want to branch from.

Create branch dialog

Bitbucket even lets you check out your branch in SourceTree, Atlassian’s free Git client for Mac and Windows, so you can start working on your code faster without having to use the command line.

Branches at a glance

Visualizing branches has never been easier. Quickly identify outstanding work that needs to be merged, or check how up to date your working branch is from the default branch (e.g. master) with the Behind/Ahead function

Branch details

You can do common tasks such as deleting branches, creating pull requests, or clean up any stale or short-lived branches that may be clogging up your repository with the Delete branch feature. If you’re looking for more details, you can even drill into your branches and commits with branch information available on the branch details view. Organizing branches has never been easier!

Check out Bitbucket for free

Bitbucket is free for individuals and teams of five or less, and includes unlimited repositories. Start a free trial today and get up and running in a matter of minutes!

Create a free account
  • Nathan Goldbaum

    I’m really not happy with this change since it was not implemented very well for mercurial repositories.

    Now, we have a very obvious branch button in the heading of our repository. Since we use mercurial, the branch button creates a *new named branch*. These named branches are very namespacey and are intended for long-lived development. Mercurial branches can never be completely removed from a repo and will always show up in the results for `hg branches`.

    It would have been much nicer if this were implemented for *bookmarks* instead of *branches*.

    Worse, now the fork button is hidden inside of the `…` button, next to branch. Can you at least make it easier to find the fork button, even if you’re leaving behind this handicapped mercurial branch functionality?

    • Nathan Goldbaum

      Looks like I spoke too soon – this new functionality *does* use bookmarks instead of named branches.

      I’m still not happy about the hiding of the fork button, but at least this won’t pollute our repo if people make mistakes.

      • http://tshepang.net/ Tshepang Lekhonkhobe

        I would rather you edit your comment than make a new one, since you don’t have responses yet. That’s because people will spend time reading your old (wrong) thouts, only to be corrected later… waste.

      • Martin Geisler

        Are you sure they use bookmarks? I just tested it and I got a named branch in my repository. The repository is here: https://bitbucket.org/mg/branch-test/. I pushed a single changeset to it and created a branch using the new UI. The result is named branch.

        • Anonymous

          I also just verified. It creates named branches. We have a strongly bookmark-oriented workflow on our project, so this might end up causing confusion.

  • Martin Geisler

    Please remember to give Mercurial some air-time on your blog too. Bitbucket is what it is today because it was the leading *Mercurial* hosting site. Many people have promoted Bitbucket because it provided a good home for Mercurial projects and now we see that you’re only talking about Git. At least you’re still implementing features for Mercurial, but you’ve stopped talking about it here on the block and I think that’s a shame.

    • http://tshepang.net/ Tshepang Lekhonkhobe

      It appears to be a trend, and am not sure if it’s the marketing focus or if they simply forget. It’s sad cuz me luvs this service, and me loves Mercurial too.

  • Markus

    I really love the new features, but there’s a slight drawback for us git flow users. If we set the production branch to be Bitbucket’s main branch, a branch’s pull requests will not show up in the branch list (as pull request point to the staging branch instead of the production branch).
    If we set staging as Bitbucket’s main branch however, we cannot sync branches anymore as that would sync unreleased staging features into our feature branches.

    Any thoughts?

  • Christopher S. Case

    So, I did some checking. This **does** use mercurial branches. I tried making a bookmark, and it doesn’t pick it up. When making a branch through Bitbucket, it appeared as a branch when I then pulled it down.

    Also, I did notice that ‘Fork’ shows up when you’re not on a project; otherwise Branch replaces it, and Fork is under the “…” menu. Honestly, I’m fine with this. Generally, I care about branching my own projects more than I do forking them.

    I do wish that the articles were written to mention Git and Mercurial… it adds a lot of confusion, and discourages Mercurial users (at least the ones I’ve talked to.)

  • ormico

    just wanted to add my voice to those who said not to forget Mercurial. Even though it sounds like this works for Mercrial and Git, the article never mentions Mercurial at all and this is a growing trend that I don’t like. We joined Bitbucket instead of GitHub for the Mercurial support.