Mercurial > public > mercurial-scm > hg
view mercurial/subrepo.py @ 8812:859f841937d0
subrepo: introduce basic state parsing
author | Matt Mackall <mpm@selenic.com> |
---|---|
date | Mon, 15 Jun 2009 02:45:38 -0500 |
parents | |
children | db3c1ab0e632 |
line wrap: on
line source
# subrepo.py - sub-repository handling for Mercurial # # Copyright 2006, 2007 Matt Mackall <mpm@selenic.com> # # This software may be used and distributed according to the terms of the # GNU General Public License version 2, incorporated herein by reference. import config, util, errno def state(ctx): p = config.config() def read(f, sections=None, remap=None): if f in ctx: try: p.parse(f, ctx[f].data(), sections, remap) except IOError, err: if err.errno != errno.ENOENT: raise read('.hgsub') rev = {} if '.hgsubstate' in ctx: try: for l in ctx['.hgsubstate'].data().splitlines(): revision, path = l.split() rev[path] = revision except IOError, err: if err.errno != errno.ENOENT: raise state = {} for path, src in p[''].items(): state[path] = (src, rev.get(path, '')) return state