You really should look into the `evolve` extension; not only is it
pretty awesome in itself, but it also simplifies editing history when
using hg-git a good deal.
You can also simply enable `obsolete` support locally, I believe; it
should have the same effect:
[experimental]
evolution = yes
In the default setup, any history modification consists of adding new
commits and stripping the old ones. There's nothing telling hg-git of
this fact, so you have to invoke `hg git-cleanup` after each modification.
If you do enable obsolete/evolution though, the old commits will stick
around, and be shown with the old Git pseudo-tags pointing to them. You
can then do a force push to update them.
(Not sure why evolution is still experimental at this point; it's been
around for years, and seems to work very well in practice ¯\_(ツ)_/¯)
Or just the short version: Run `hg git-cleanup` prior to pushing.
- Dan
On 18/10/2024 11.03, 'Uwe Brauer' via hg-git wrote:
Hi
Here is my supposed workflow (for a fork in github)
- Fork the repository
- clone it to you machine
- commit a change on a new branch (bookmark)
- push
- changes that are suggested by the maintainer should be done by amending
the changes to the commit that was already pushed!!!
- and then push again
I tried that using the latest hg-git vanilla (so no fancy stuff like named
branches or topics).
I tried it with or without evolve, for example without evolve something like
hg commit -m "matlab-mode: update url to github, modify list of files" --amend
But then the push command returned
hg push
pushing to git+ssh://g...@github.com:ouboub/melpa-matlab.git
Warning: Permanently added 'github.com' (ED25519) to the list of known hosts.
searching for changes
abort: unknown revision 'd7fc2eeb5a0aede72bb7f221d901656822a98c24'
I cannot use hg histedit because the changeset is already public.
Any idea how to do this?
Or is this beyond hg-git?
Regards
Uwe
_______________________________________________
Mercurial mailing list
Mercurial@lists.mercurial-scm.org
https://lists.mercurial-scm.org/mailman/listinfo/mercurial