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!