##// END OF EJS Templates
log: hide hidden option until it actually does something
log: hide hidden option until it actually does something

File last commit:

r15419:ccb7de21 default
r15424:f3b5ba25 default
Show More
phases.py
41 lines | 1.2 KiB | text/x-python | PythonLexer
# Mercurial phases support code
#
# Copyright 2011 Pierre-Yves David <pierre-yves.david@ens-lyon.org>
# Logilab SA <contact@logilab.fr>
# Augie Fackler <durin42@gmail.com>
#
# This software may be used and distributed according to the terms of the
# GNU General Public License version 2 or any later version.
import errno
from node import nullid, bin, hex
allphases = range(2)
trackedphases = allphases[1:]
def readroots(repo):
"""Read phase roots from disk"""
roots = [set() for i in allphases]
roots[0].add(nullid)
try:
f = repo.sopener('phaseroots')
try:
for line in f:
phase, nh = line.strip().split()
roots[int(phase)].add(bin(nh))
finally:
f.close()
except IOError, inst:
if inst.errno != errno.ENOENT:
raise
return roots
def writeroots(repo):
"""Write phase roots from disk"""
f = repo.sopener('phaseroots', 'w', atomictemp=True)
try:
for phase, roots in enumerate(repo._phaseroots):
for h in roots:
f.write('%i %s\n' % (phase, hex(h)))
finally:
f.close()