Mercurial Queues

See [http://hgbook.red-bean.com/hgbook.html], Chapters 12 and 13.

The mercurial bash completion script is at [http://www.cct.lsu.edu/~mkemp2/mercurial]

My mercurial queue workflow:

# cd into the repository
cd sage/devel/sage/


# initialize the queues.  This only needs to be done once.
hg qinit



# cd into the directory I am working in 
cd sage/graphs/

emacs graph.py # write my function, save the file

# The -e pops up an editor for me to enter a commit message
# The -f retroactively saves my changes as a patch
# (the changes visible in hg diff)

hg qnew -e -f mypatch.patch

# RUN THE DOCTESTS!!!

sage -b
sage -t graph.py

# Happily all the doctests pass :)

# Review the patch in diff format

hg qdiff

# Export the tip of the queue (the last patch)
hg export qtip > ~/mypatch.patch

# If I want the patch to be unapplied, pop it off of the stack

hg qpop