"Stephen J. Turnbull" <stephen(a)xemacs.org> writes:
[ui]th such things.
The "mq" extension enables Mercurial queues. This is convenient (but
not as convenient as git stash or bzr shelve) when you've got some
Real Work in progress that you don't really want to commit, and an
unrelated typo or something:
<save file>
hg new tmp
<fix typo and save file>
hg new -m "Fix typo." typo
hg qpop # now you're back where you were in Real Work
<finish Real Work and save file>
hg qrefresh -m "Appropriate log message for commit."
hg qfinish # converts mq patch into a real commit with the above
# log message
hg qpush
hg qfinish # converts typo patch into a real commit with the
# "Fix typo." log message
If that workflow looks too annoying, I'm sure there is something
closer to bzr shelves. I use mq personally to organize my real work
(cf recent discussion on emacs-devel of pipelines and looms). Since
mq provides named patches, it's almost like tiny branches. It does
obey a stack discipline (so why do they call it "queues?" :-), but you
can use more advanced features like guards and collapsing to achieve
any combination of patches you like. But I won't be offended if you
don't use it. :-)
Mercurial also has named shelves that don't force you to use a stack.
I also use it like mini-branches. They can also work like 'git add
-i', but in reverse where you choose changes to to shelve and not
apply. I use that when I end up with unrelated changes in the source
that I really should check in separately.
_______________________________________________
XEmacs-Beta mailing list
XEmacs-Beta(a)xemacs.org
http://lists.xemacs.org/mailman/listinfo/xemacs-beta