Differences between revisions 3 and 4
Revision 3 as of 2008-02-09 08:19:00
Size: 310
Editor: jason
Comment:
Revision 4 as of 2008-03-10 16:38:59
Size: 1079
Editor: jason
Comment:
Deletions are marked like this. Additions are marked like this.
Line 13: Line 13:

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

}}}

Mercurial Queues

  • Philosophy
  • Commands
    • qnew, qpop, qpush, qdelete, export
  • Example
  • Advanced usage
    • guards, merge, etc.

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