diff -r 24346b78cd99 -r 4e3f25ba5401 doc/from-mq.rst --- a/doc/from-mq.rst Wed Mar 21 11:57:03 2012 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,156 +0,0 @@ -Moving from mq to hg-evolution -=============================== - -Cheat sheet -------------- - -============================== ============================================ -mq command new equivalent -============================== ============================================ - -qseries ``log`` -qnew ``commit`` -qrefresh ``amend`` -qpop ``update`` or ``qdown`` -qpush ``update`` or ``gup`` sometimes ``stabilize`` -qrm ``kill`` -qfold ``amend -c`` (for now, ``collapse`` soon) -qdiff ``odiff`` - -qfinish -- -qimport -- - - -Replacement details ---------------------- - -hg qseries -``````````` - -All your work in progress are now real changeset all the time. - -You can then use standard log to display them. You can use phase revset to -display unfinished business only and template to have the same kind of compact -output qseries have. - -This will result in something like that:: - - [alias] - wip = log -r 'not public()' --template='{rev}:{node|short} {description|firstline}\n' - -hg qnew -```````` - -With evolve you handle standard changeset without additional overlay. - -Standard changeset are created using hg commit as usual. - - $ hg commit - -If you want to keep the "wip are not pushed" behavior, you are looking for -setting your changeset in the secret phase using the phase command. - -Note that you only need it for the first commit you want to be secret. Later -commit will inherit their parents phase. - -If you always want your new commit to be in the secret phase, your should -consider updating your configuration: - - [phases] - new-commit=secret - -hg qref -```````` - -A new command from evolution will allow you to rewrite the changeset you are -currently on. just call: - - $ hg amend - - -This command takes the same option than commit plus useful switch '-e' (--edit) -to edit the commit message. - -Amend have also a -c switch which allow you to make and explicit amending -commit before rewriting a changeset. - - $ hg record -m 'feature A' - # oups, I forget some stuff - $ hg record babar.py - $ hg amend -c .^ # .^ refer to "working directoy parent, here 'feature A' - -note: refresh is an alias for amend - -hg qpop -````````` - -the following command emule the behavior of hg qpop: - - $ hg gdown - -If you need to go back to an arbitrary commit you can just us: - - $ hg update - -.. note:: gdown and update allow movement with working directory changes applied - and gracefully merge them. - -hg qpush -```````` - -When you rewrite changeset, descendant of rewritten changeset are marked as -"out of sync". You new to rewrite them on top of the new version of their -ancestor. - -The evolution extension add a command to rewrite the next changeset: - - $ hg stabilize - -You can also decide to do it manually using - - $ hg graft -O - -or - - $ hg rebase -r -d . - -note: using graft allow you to pick the changeset you want next as the --move -option of qpush do. - - -hg qrm -``````` - -evolution introduce a new command to mark a changeset as "not wanted anymore". - - $ hg kill - -hg qfold -````````` - - -:: - - $ hg up - $ amend --edit -c - - -or later:: - - $ hg collapse # XXX not implemented - - $ hg rebase --collapse # XXX not tested - - -hg qdiff -````````` - -``odiff`` is an alias for `hg diff -r .^` it works as qdiff event outside mq. - - - -hg qfinish and hg qimport -```````````````````````````` - -Is not useful anymore if you want to controll exchange and mutability of -changeset see the phase feature