Transitioning between Bitbucket Data Center and Bitbucket Cloud requires a deep understanding of their differences and similarities. This comparison is crafted to assist users considering migration and consultants eager to grasp the nuances of these platforms.

Feature Parity Indicators:

  • ✅ Exact feature match
  • ⚠️ Slight differences exist
  • ❌ Feature absent in one platform

Repository Details

FeatureBitbucket Data CenterBitbucket CloudFeature Parity
Name and descriptionYesYes✅
Repository SizeYesYes✅
Git Large File StorageNoYes❌
Git LFS FilesNoYes❌
Forking– Allow
– No Forks
– Allow
– Only Private Forks
– No Forks
⚠️
Default branchYesYes✅
Default landing pageNoYes❌
Allow LFSYes/NoOnly Yes⚠️
Transcode diffsYesNo❌

Security

Understanding the security model is essential for repository management. Here is how permissions are structured differently across the two platforms.

FeatureBitbucket Data CenterBitbucket CloudFeature Parity
Repository Permissions– Users (admin, read, write)
– Groups (admin, read, write)
– Users (admin, read, write)
– Groups (admin, read, write)
✅
Branch PermissionsBy branch name, branch pattern, branching model/typeBy branch name, branch pattern, branching model/type✅
  ↳ Prevent changesPrevent all changes, except by: <User, group or access keys>Branch restrictions -> Merge permissions: Only specific people or groups have write access (only users allowed)⚠️
  ↳ Prevent deletionPrevent deletion, except by: <User, group or access keys>Branch restrictions -> Merge permissions: Allow deleting this branch (only everyone) ⚠️
  ↳ Prevent rewriting historyPrevent rewriting history, except by: <User, group or access keys>Branch restrictions -> Merge permissions -> Allow rewriting branch history (only everyone) ⚠️
  ↳ Prevent changes without a pull requestPrevent changes without a pull request, except by: <User, group or access keys>No❌
Access KeysYesYes✅
HTTP Access Tokens Read, write, admin + Expiry Date– Pull requests: read, write
– Pipelines: Read, Write, Edit Variables
– Runners: Read, Write
– Webbhooks: Read, Write
⚠️
Push LogYesNo❌
Audit LogYesNo❌

Workflow

Efficient development workflows are vital for successful project delivery. Below, I detail how each platform supports these processes and where you can find the corresponding features in Bitbucket Cloud.

FeatureBitbucket Data CenterBitbucket CloudFeature Parity
Branching Model– Development
– Production
– Development
– Production
✅
Branch PrefixesYesYes✅
Automatic MergingFor all branches– By branch
– Branch restrictions -> Merge settings: Allow automatic merge when builds pass
⚠️
HooksPre receive
– Reject Force Push
– Verify Commit Signature – Verify Committer
Post Receive
– Marketplace
Better Commit Policy for Bitbucket⚠️
WebhooksOnly Data Center:
+ Comment edited
+ Comment deleted
+ Mirror synchronized
+ Reviewers updated
+ Pull Request Unapproved
+ Pull Request Needs work
Only Cloud:
+ Issue Created
+ Issue Updated
+ Issue Comment created
+ Source branch updated
+ Approval removed
+ Pull Request Comment resolved
+ Build status created
+ Build status updated
⚠️
Branch Deletion on MergeYesNo ❌
Automatic MergingYesNo❌

Pull Request Management

Pull requests are key to collaborative development. This comparison focuses on the features and where you can find the corresponding features in Bitbucket Cloud.

FeatureBitbucket Data CenterBitbucket CloudFeature Parity
Merge ChecksNo unresolved pull request tasksBranch restrictions -> Merge settings  -> No unresolved pull request tasks✅
Merge ChecksMinimum approvalsBranch restrictions -> Merge settings  -> Minimum number of approvals / Minimum number of approvals✅
Merge ChecksMinimum successful buildsBranch restrictions -> Merge settings  -> Minimum number of successful builds for the last commit with ✅
Merge ChecksNo ‘needs work’ statusBranch restrictions -> Merge settings  -> No changes are requested✅
Merge ChecksNo incomplete tasksBranch restrictions -> Merge settings  -> No unresolved pull request tasks✅
Merge ChecksNoBranch restrictions -> Merge settings  -> Maximum number of commits behind destination branch❌
Merge ChecksNoBranch restrictions -> Merge settings  -> Reset requested changes when the source branch is modified❌
Merge ChecksNoBranch restrictions -> Merge settings  -> Allow automatic merge when builds pass❌
Merge ChecksNoBranch restrictions -> Merge settings  -> Reset approvals when the source branch is modified (Premium)❌
Merge ChecksNoBranch restrictions -> Merge settings  -> Prevent a merge with unresolved merge checks (Premium)❌
Merge strategiesMerge commit
–no-ff
Merge strategies (Fast-forward OR Merge commit OR Squash)⚠️
Merge strategiesFast-forward
–ff
Merge strategiesFast-forward only
–ff-only
Merge strategiesRebase and merge rebase + merge
–no-ff
Merge strategiesSquash
–squash
Merge strategiesSquash, fast-forward only
–squash –ff-only
Merge strategiesCommit summariesNo❌
Default reviewers Per branch source/targetPer repository⚠️
Approvals RequiredPer branch source/targetPull Request Template⚠️
Pull Request TemplateDescription templateDefault Description✅
Default tasksNoYes❌
Exclude filesNoYes❌
Auto DeclineYesNo❌
Required buildsYesNo❌
Reviewer GroupsYesNo❌
Code QualityCode InsightsIntegrations⚠️

Features

FeatureBitbucket Data CenterBitbucket CloudFeature Parity
PipelinesNoYes✅
Atlassian IntelligenceNoYes✅
Internal Issue Tracker NoYes✅
Internal WikiNoYes✅
Slack IntegrationWith AppsNative⚠️

Conclusion

I’ve endeavored to include the most relevant and comprehensive information in our detailed comparison between Bitbucket Data Center and Cloud. Your insights and experiences are invaluable, and I encourage you to share your thoughts. Was this comparison helpful? Did you notice any discrepancies or missing features that I overlooked? Your feedback not only enriches this discussion but also aids others in making informed decisions. Please leave your comments below!