Skip to content
  • Taapas Agrawal's avatar
    abort: added logic for of hg abort · bb135a784b70
    Taapas Agrawal authored
    This is part of `GSoC19` project `Implement abort and
    continue commands`. This patch is part of the `abort plan`.
    
    This adds the basic logic for `hg abort`. This command
    aborts an multistep operation like graft, histedit, rebase,
    merge and unshelve if they are in an unfinished state.
    
    The first part of the logic is determining the unfinished
    operation from the state detection API under `statemod`.
    This API is extended to support `hg abort` by adding a method
    to register the abort logic as a function (here `abortfunc`).
    
    Once the unfinished operation is determined the registered
    logic is used to abort the command. The benefit of this kind
    of framework is that any new extension developed can support
    `hg abort` by registering the command and logic under
    statedetection API.
    
    `hg abort` currently supports `--dry-run/-n` flag only.
    It is used to dry run `hg abort`
    
    Further patches sequentially add support for `graft`, `rebase`,
    `unshelve`, `histedit` and `merge`.
    
    Differential Revision: https://phab.mercurial-scm.org/D6566
    bb135a784b70