As software organizations grow it becomes difficult to ensure development rules and workflows are enforced across all teams and projects. With the release of Bitbucket Server and Bitbucket Data Center 4.7, we’ve made improvements to our REST and Java service APIs to make it easier for large software teams to make sure their rules and workflows are actually being followed – automatically.
REST and Java service APIs to manage pull request restrictions
While automation is used to keep projects consistent, at the same time each organization is also a little bit different so there isn’t necessarily a “one size fits all” solution. This is where external tools and scripts can step in and call on Bitbucket Server’s APIs to apply whatever business rules are required.
In 4.7 we’ve closed an important gap in coverage for these kinds of operations by adding REST and Java service APIs for setting pull requests restrictions. Now, in addition to being able to remotely create a repo and set up branch permissions, you can specify the minimum approvals and successful builds required for a pull request to be mergeable. For our 3rd-party developers writing similar merge checks, we’ve also made it possible for your own add-ons to expose a consistent API.
These API improvements are just the tip of the iceberg. This release addresses over 400 votes on our public issue tracker, so let’s take a look at what else is new:
Add or delete tags to commits from the web UI
Tags in Git let you mark a particular point in your commit graph such as an important build or release. It’s always been possible to do this via Git, and we previously added the ability to do it via the REST API, but lots of people were asking for a way to do it from the comfort of the Bitbucket UI. In 4.7 that’s possible, so you don’t have to switch to your Git client just to create a tag on a commit.
Improvements for raw file URLs
Previously our raw files were served by adding “?raw” to a file URL. This didn’t work so well when people wanted to use links in other files in the repository. That URL scheme still exists, but to address the issue we’ve introduced a new URL scheme that works for relative linking purposes.