One of the best, easy to use on-prem source control server software
Use Cases and Deployment Scope
Our organization uses BitBucket Server as our primary source control solution, across many different types of software - from front-end to back-end, or even to store configuration and documentation. It allows us to perform code reviews, link changes to Jira tickets, and facilitates enforcement of quality gates - all important in our increasingly remote workforce.
Pros
- Pull requests / code reviews are simple but effective - it's easy to discuss the changes and enforce quality gates (through integration with Bamboo)
- The access control model is fairly granular, with per-branch and per-action permission configuration options
- There are various plugins available to extend functionality, such as SonarQube
Cons
- You can't allow users to create new repositories without them being full admins of a whole project
- There's not a way to limit who can merge a pull request (e.g. allow only the author to merge) outside of branch permissions
- Some settings like default reviewers can't be easily copied to different repositories (without setting default reviewers at the project level, which we don't want to do because a single project has multiple team's code under it)
Likelihood to Recommend
BitBucket Server would work really well for small to medium sizes businesses who require a self-hosted code repository. It's less well suited for those who don't want to manage their own infrastructure, and would be better served by something like GitHub or BitBucket Cloud. Additionally we've ran into some small limitations as a large enterprise in regard to some configuration options, and it doesn't allow for zero downtime upgrades for major releases. Finally BitBucket's integration with Bamboo is great, but other automation tools might not integrate quite as tightly.
