Mercurial > evolve
view debian/copyright @ 5544:0bb75a6c29b1
rewind: add a --dry-run flag
There are 3 cases handled separately in formatstatus():
- common-case rewind when we have X current successors rewinding to Y
predecessors
- rewinding with --as-divergence, when we don't obsolete current successors
- rewinding pruned commits, when we don't have current successors to show
In the common case, we might have sub-cases that change the output with
--dry-run (but not the way the rewind operates):
- more predecessors than successors (e.g. after a fold), in which case we
simply use successorsmap, which maps successors to a set of predecessors
- equal number of predecessors and successors, see the previous case
- more successors than predecessors (e.g. after a split), in which case we
use a reverse of successorsmap (rsm), which maps predecessors to a set of
successors and exists only for the sake of --dry-run functionality
These two dicts allow us to group rewind targets and output separate lines for
separate predecessors<->successors relations.
author | Anton Shestakov <av6@dwimlabs.net> |
---|---|
date | Tue, 21 Jul 2020 01:04:43 +0800 |
parents | e3acb8823900 |
children | fc877278f79e |
line wrap: on
line source
This software was downloaded from https://www.mercurial-scm.org/repo/evolve/ Copyright 2011 Peter Arrenbrecht <peter.arrenbrecht@gmail.com> Logilab SA <contact@logilab.fr> Pierre-Yves David <pierre-yves.david@ens-lyon.org> Patrick Mezard <patrick@mezard.eu> This software may be used and distributed according to the terms of the GNU General Public License version 2 or any later version. On Debian systems, the complete text of the GNU General Public License version 2 can be found in `/usr/share/common-licenses/GPL-2'.