Best practice: Syncing the master and beta branches

I am wondering how to cleanly synchronize the master and beta branches of my flathub repositories. A typical workflow is that beta is updated more frequently than master, but that after an update to master, beta should be identical to it until new beta releases are attempted. In such cases I’d like beta and master to point to exactly the same commit SHA. But I haven’t found a way to do this. I can create a PR from master to beta, but with GitHub’s inability to do proper fast-forward merges, it always creates either a merge commit or a modified commit in the beta branch that make the branches point to different SHAs, even though the content is identical.

I have tried creating a PR, waiting for the build to finish and succeed, and then pushing the same head commit to beta, but it’s forbidden, too.

Am I missing something? Is there a trick to achieve this?

Some developers only publish a beta before a new release to just test the new version and leave it as-is until another beta comes in. Mean, they never release a stable version in the beta channel.

Are you saying what I want to do is just impossible?

No. I say what some developers do. It’s up to developers.

It’s up to developers.

Sure. I’m a developer, too, and I like to have a clean history between master and beta. That was my question: If, and how, it’s possible to do this on flathub.

You can just use a merge commit or rebase-onto. These are manifest repos, I would not worry about keeping commit history clean.

Anything other than that is not possible due to the branch protection settings.

Yeah. I can do that. But it will create either a merge commit or a rebased / modified commit, meaning that the branches will not be identical.