On 29 Sep 2025, at 15:13, Matthew Stidham wrote:
Hi,
Awesome, thank you. I've put my changes into a branch and am trying to push
my changes to a new branch on heptapod. I am receiving the error messageremote: You are not authorised to publish changesets
I'm authenticating with my username and password, and I am pushing with the
command hg push --new-branch.My SSH key is added to my account from this desktop, but it is not
recognizing it.I'm new to heptapod and mercurial, I almost always use git. What am I doing
wrong?
I don't think you're doing anything really wrong but Heptapod is set up to use topics for changes rather than branches. These look and feel like branches but the internals are different but don't ask me about the details and only try to read the docs if you're prepared to try and understand them.
You'll need to make sure you have the extension installed - I think it's now standard with Mercurial but also enabled for the repository: this is pretty easy in Tortoise or the command line.
You then need to switch branches to the one you based your changes on, create a topic and make the changes – you can't really merge from your branch, because that would sort of create it. You can then delete the branch you created and it should be possible to push the topic. Once you have a topic you use it like a normal branch, but Mercurial will hide it automatically once I have merged it.
I know that changing VCSes is always annoying, but once you've got it set up, you'll probably need to change nothing.
On 1 Oct 2025, at 16:23, Matthew Stidham wrote:
Hiya,
I was able to merge your changes to my topic, but it wouldn't push to
heptapod.
Looking at the log it looks like you merged into the default branch. This is unnecessary as the topic would be merged automatically into the correct branch once I approve it.
I tried both ChatGPT and the documentation to no avail.
I've never worked with ChatGPT but Mistral seemed to come up with a workable solution. Well, it worked without errors. I'll just have to see if anything is broken!
For info, this is what it came up with:
"""
Merging a topic into the wrong branch in Mercurial can be undone, but the approach depends on whether you've already pushed the changes or not. Here’s how to handle it:
Find the revision of the merge:
Run hg log to identify the changeset ID of the incorrect merge.
If the merge has been pushed
If the merge is already public (pushed to a shared repository), rolling back isn’t safe because it rewrites history. Instead, you can reverse the merge:
Create a reverse merge commit:
Use the hg revert command to undo the changes introduced by the merge:
hg revert --all --rev "parent of the merge"
hg commit -m "Revert accidental merge of topic into wrong branch"
Replace "parent of the merge" with the changeset ID of the commit before the merge.
Merge the topic into the correct branch:
Now, merge the topic into the intended branch:
hg update correct_branch
hg merge topic_branch
hg commit -m "Merge topic into correct branch"
"""
I don't know why, and I don't care enough about Mercurial to learn how to do it
properly at this point.
You might want to reconsider that sentence as if I'd written it about your project… ;-)
You made all the necessary changes in my branch
already, so once a new version is released, it will work for my team. Thank
you. We will update our dependencies and test again when the new version is
released. Thank you.
Charlie