Recent evolve --all changes

Josef 'Jeff' Sipek jeffpc at josefsipek.net
Mon Apr 29 15:55:21 UTC 2019


Hello,

I recently updated and that pulled in 3ef96578 which adds an implicit --all
to 'hg evolve'.  I have a couple of problems with that (or maybe it is my
workflow that needs tweaking).

1) Before the change, 'hg evolve' would evolve only one cset, now it evolves
   everything (all descendants?  I haven't experimented enough).  This is
   rather annoying when I check out an older cset with the intention of
   amending it.  Consider the (for me) common workflow:
   
   a) check out an older cset
   b) edit
   c) 'hg amend'
   d) 'hg evolve' a few times to get enough changes into wdir
   e) run various tests, possibly going back to step (a)
   f) 'hg evolve' everything after the already evolved csets

   In the past this worked fine.
   
   With the new behavior, step (d) forces me to mentally context switch by
   forcing me to resolve all conflicts even if they are in ancestors I'm not
   currently working on (previously they'd be handled by step (f) above).

   (This happens all the time when the history is of the form: introduce a
   library function foo, convert codebase to use foo, introduce a library
   function bar, convert codebase to use bar.)

   Am I missing something?  Is my workflow awkward for evolve (and it just
   happened to work in the past)?  Is there a new way to evolve like there
   was previously?

2) 'hg evolve -h' text talks about --no-all, but the list of options at the
   end does not mention --no-all.

3) 'hg evolve -h' list of options should mention that --all is the default.

Thanks,

Jeff.

-- 
I think there is a world market for maybe five computers.
		- Thomas Watson, chairman of IBM, 1943.


More information about the Evolve-testers mailing list