You're on your way to the next level! Join the Kudos program to earn points and save your progress.
Level 1: Seed
25 / 150 points
1 badge earned
Challenges come and go, but your rewards stay with you. Do more to earn more!
What goes around comes around! Share the love by gifting kudos to your peers.
Keep earning points to reach the top of the leaderboard. It resets every quarter so you always have a chance!
Join now to unlock these features and more
We've started to see changes on the PR that are already merged.
We stopped using Github because their diff system on the PRs would show changes that were already merged in.
Recently, these same phantom changes started showing in on the PR diff. This is a big problem for us.
Here is a scenario:
feature-a is branched off of master
feature-b is branched off master
feature-a is merged into feature-b
feature-a is merged into develop
a PR into develop is created for feature-b
The diff for the feature-b PR is showing changes from feature-a even though it is already merged into develop.
I know Bitbucket recently made some changes to how merge conflicts are shown. This may be an unfortunate side effect from that change.
Hi @benbuie and welcome to the community.
We recently made changes to our diff algorithm from what we call a '3-way' diff to a 2-way 'three-dot' diff. The '3-way' diff includes changes to the destination branch, whereas the 'three-dot' diff does not reflect changes made to the destination branch since the source branch was created from the destination branch:
While we were proudly the sole source code management tool in the industry that supported the preview-merge diff, it was very significantly impacting the performance we were able to deliver to our customers. The complexity to calculate the preview merge diffs is the very reason why other SCM providers made the choice never to even introduce them to their customers.
While the preview-merge diff showed the changes made to the destination branch in the diff, if the feature branch was not synced with the latest from the target branch then the feature branch code was not tested with the latest target branch code.
In order to see the changes to the target branch reflected in the diff, simply sync the target branch to your feature branch. The sync can be done by merging the target branch into the feature branch (locally or in the UI), or it can be done by rebasing the feature branch locally. Instructions for both are detailed here.
By making these changes to the diffs we are now able to give you a boosted performance and we also continue to work on additional features that should help your internal workflows. Please feel free to monitor our public roadmap and we are hoping that you will be able to develop seamless workflows for your team.