store all heads of a branch in the branch cache
All heads of branches will be stored in a new cache file 'branchheads.cache'
within the .hg directory. The old 'branch.cache' file from older versions
will be ignored.
The new cache contents are formatted line-by-line as '{node} {branchtag}\n'.
This is the same as the previous format. Now, every head is recorded in
an oldest -> tipmost order.
The localrepo.branchheads function is reworked to use the data from the cache.
% try to commit on top of a patch
abort: cannot commit over an applied mq patch
% qpop/qrefresh on the wrong revision
abort: popping would remove a revision not managed by this patch queue
using patch queue:
abort: popping would remove a revision not managed by this patch queue
abort: working directory revision is not qtip
1 files updated, 0 files merged, 0 files removed, 0 files unresolved
% qpop
abort: popping would remove a revision not managed by this patch queue
% qrefresh
abort: cannot refresh a revision with children
% tip:
3 append quux