Thanks. Yeah maybe it is recent addition. I think earlier it used to show only conflicting changes and not all the changes.
UX could be better I think here, but I suppose it is a start.
Selective application of which change to merge is really critical. Hope that comes soon.
Also, the process to check these differences, make tweaks, check again etc is quite slow, but sure, at least there is a way to check differences, so that’s good. Thanks for sharing.
I just tried it but it didn’t seem to work correctly.
In my branch I had taken out an element from one repeating group and put it in another new repeating group which has the source of first repeating group. And then there was another group added as well to that repeating group.
When I go to the branch I can see the changes. However, when I review changes (which can only be initiated when I choose merge, which is bit scary) it only shows some small changes like css
Shown below is original. You see Partner Heading Name is inside Repeating Group Partner Calendar
Shown below is in the branch. Partner Heading Name is out of Repeating Group Calendar and in another new repeating group Repeating Group Partner Column Attendance . Also the new repeating group has another group to it.
However, the “Review changes” shows just this much:
I’ve experienced similar issues. It seems “review changes” is not accurate. It both forgets to show changes made (like you outlined) AND it sometime’s shows changes that I never actually did.
In short my version control change log can’t be trusted. It lies to me.
I also just filed a bug report for a similar issues. A branch that recently pushed to main, then to live, is now showing that it’s out of sync with live. When I press “sync with live” it presents me with the list of changes (aka differences) from live. But then there’s zero changes and zero conflicting changes.
How’s it possible that it’s out of sync with live, but then there’s 0 items out of sync with live.
At least on portion of the new version control is giving me incorrect info.
@nick.carroll can you provide some advice/ work around?
Great that you managed to file a bug report in this case. In my case this (and many such cases) went without bug report. Filing bug reports for such things require lot of explanation to support team, and till they have looked at the issue, I can’t fix the issue. And of course even if I do manage to file report and manage to show the issue to them, the issue won’t occur in their system, or it will be one time issue, or will be “expected behaviour” due to some obscure reason of “that’s how it is coded”.
My confidence is restored, bubble support got back to me. This is not a bug and it’s behaving as designed, and it makes sense.
They said:
"To provide some context on this, when deploying to Live from Main, the other branches do not track what was deployed but only that a deployment occured. So, that is why branch [mybranch]’ is ‘out of sync’ but has no changes or conflicts to resolve. While no changes were actually made, the branch does not know there were no changes made in Main before deploying. "
The latest community update also specifically mentions how a changelog is in the works.
Thanks @brad.h for sharing this. Yes, it should be useful in many use-cases.
I’d stay away from using this though as of now. My editor is already super slow and keeps crashing. I have a feeling it would add to the load. And also if anything goes wrong, Bubble would wash their hands off totally. Also, it would show complete change history I suppose. But if we went through a series of changes, undo, redo, some testing groups creation/deletion etc, it will show all that as well, while I am interested in knowing difference between one version and another at one point of time.
But yes, like you said, it would help in identifying accidental edits in Main.
I found that changes made in child branches don’t ship to main (or live) with 100% reliability.
For example, I create a child branch off main. I make edits in child and then I merge changes from child into main.
It tells me the merge was complete successfully, however not all changes merge. And you’re not notified of changes that don’t merge…you have to find them manually.
In my case I deleted multiple app pages in the child branch. When I shipped those changes to main almost all of them were correctly deleted…except two pages. This makes me curious about two things:
What other changes have I thought shipped that never did?
Perhaps this issue is ONLY with page delete (I hope)?
I screen recorded this entire process and filed a bug report.
Edit: The branches that did not delete had errors in the issue checker. I’m hoping this is an isolated issue only because there was issues in those pages. I’ll share updates from bubble support when I get them
Thanks for sharing. It is scary the way version control works.
It is quite sad that Bubble seems to have just shipped something buggy and then has not bothered to look at reliability, usability and usefulness of this feature.
It has been one year since launch of this and no fixes/improvements since then.
Looks like this was just a tick mark in their list that they shipped this item.
@brad.h In one app I found this behaviour, however it got resolved when I first do “Sync with Main” and then merge the child branch with the Main Branch. (Even if I created this branch some minutes before).
thanks for the tip! it was the first thing I tried. I also reverted to a manual save point and tried again. Then I went ahead and just did another merge from child to main.
no luck.
I was forced to make the changes in main (deleting pages).
Hi!
For version control, I think everybody on earth works the same:
Create a Branch, work, pull Main, go to Main, pull Branch, QA that the pull went well, delete Branch.
The problem is that now, to pull a Branch to main, you need to go to Main, and to delete a Branch you need to go back to the Branch. And each back and forth takes 30 seconds to load, which is really annoying. And this leads to procrastinating deleting branches, which leads to having lots of messy archived branches , or it leads toward making several features in one branche, which is also not rigorous at all .
While there would be really really simple solutions to this problem:
Replace the Delete button by a “Freeze & Delete”(/"Archive) button : freeze the branch gets freezed for 8 days, you can’t edit it anymore, but you can go to main, and Pull the branch. If there is a merging/QA problem, you can unfreeze it and modify it again. If there is no problem, you forget the branch, and it gets deleted 8 days later.
OR
Right click/··· three dots menu from the branches panel, and be able to delete a branch from Main, without switching back to the branch (without needing to reload the branch). From the branch panel, you already see “Modified 30mins ago”, and you need to type “delete branch-xxx” in the branch deletion popup, so it’s already pretty safe.
OR
For additional safety, have the same Right click/··· three dots menu to delete a branch from Main, but unable deleting a branch only if it has already been Freezed. So to close the loop on the whole process: you finish your feature, you pull from main, you Freeze the branch (you can’t modify it anymore, unless you unfreeze it), you go to main, you pull your Branch, you QA, you delete your (freezed) branch.
Also, another feedback: some wordings are unclear right now :
“Sync with Main” – does it mean pull or push? → Rename it “Pull from main”
“Merge changes from another branch” – merge is the generic term → here you mean “Pull changes from another branch”, make it clear, so everything is clear.
It’s the same things on the branches buttons, in the branches popups, in the branches history… sync/merge is always unclear if you are pulling from x or pushing to x.