force commuting in practice

Ganesh Sittampalam <[email protected]> Fri, 14 Jun 2019 23:52:08 +0200
Newsgroups gmane.comp.version-control.darcs.user
Message-ID <[email protected]>
Hi,

At the moment the darcs patch theory doesn't support the idea of
forcibly commuting two patches A;B when B depends on A. It's tricky
because both results would have conflicts.

So if you want to do it anyway, you have to make two new patches B';A'.

The best way I know of doing it at the moment is this:

1. Make a clone of the repository.
2. Use rebase to suspend B
3. Obliterate A
4. Unsuspend B
5. Resolve conflicts and amend B to make B'
6. Pull in A from the clone.
7. Resolve conflicts and amend A to make A'

The conflict resolution in step 7 is particularly annoying as it could
be logically deduced from the resolution in step 5.

Does anyone have a better way?

Cheers,

Ganesh