Mercurial > hg
view contrib/vim/hgtest.vim @ 38280:2ec44160165d
graft: add a new `--stop` flag to stop interrupted graft
This patch adds a new flag `--stop` to `hg graft` command which stops the
interrupted graft.
The `--stop` flag takes back you to the last successful step i.e. it will keep
your grafted commits, it will just clear the mergestate and interrupted graft
state.
The `--stop` is different from `--abort` flag as the latter also undoes all the
work done till now which is sometimes not what the user wants.
Suppose you grafted a lot of changesets, you encountered conflicts, you resolved
them, did `hg graft --continue`, again encountered conflicts, continue, again
encountered conflicts. Now you are tired of solving merge conflicts and want to
resume this sometimes later. If you use the `--abort` functionality, it will
strip your already grafted changesets, making you loose the work you have done
resolving merge conflicts.
A general goal related to this flag is to add this flag to `rebase` and
`histedit` too. The evolve command already has this --stop flag.
Tests are added for the new flag.
.. feature::
`hg graft` now has a `--stop` flag to stop interrupted graft.
Differential Revision: https://phab.mercurial-scm.org/D3668
author | Pulkit Goyal <7895pulkit@gmail.com> |
---|---|
date | Mon, 28 May 2018 21:13:32 +0530 |
parents | 6db1642288c0 |
children |
line wrap: on
line source
" Vim syntax file " Language: Mercurial unified tests " Author: Steve Losh (steve@stevelosh.com) " " Place this file in ~/.vim/syntax/ and add the following line to your " ~/.vimrc to enable: " au BufNewFile,BufRead *.t set filetype=hgtest " " If you want folding you'll need the following line as well: " let hgtest_fold=1 " " You might also want to set the starting foldlevel for hgtest files: " autocmd Syntax hgtest setlocal foldlevel=1 if exists("b:current_syntax") finish endif syn include @Shell syntax/sh.vim syn match hgtestComment /^[^ ].*$/ syn region hgtestOutput start=/^ [^$>]/ start=/^ $/ end=/\v.(\n\n*[^ ])\@=/me=s end=/^ [$>]/me=e-3 end=/^$/ fold containedin=hgtestBlock syn match hgtestCommandStart /^ \$ / containedin=hgtestCommand syn region hgtestCommand start=/^ \$ /hs=s+4,rs=s+4 end=/^ [^>]/me=e-3 end=/^ $/me=e-2 containedin=hgtestBlock contains=@Shell keepend syn region hgtestBlock start=/^ /ms=e-2 end=/\v.(\n\n*[^ ])\@=/me=s end=/^$/me=e-1 fold keepend hi link hgtestCommandStart Keyword hi link hgtestComment Normal hi link hgtestOutput Comment if exists("hgtest_fold") setlocal foldmethod=syntax endif syn sync match hgtestSync grouphere NONE "^$" syn sync maxlines=200 " It's okay to set tab settings here, because an indent of two spaces is specified " by the file format. setlocal tabstop=2 softtabstop=2 shiftwidth=2 expandtab let b:current_syntax = "hgtest"