##// END OF EJS Templates
transaction: use 'util.copyfile' for creating backup...
transaction: use 'util.copyfile' for creating backup Using 'copyfile' (single file) instead of 'copyfiles' (tree) will ensures destination file will be overwritten. This will prevent some abort if backup file are left in place for random reason. It also seems more correct.

File last commit:

r18081:f88c60e7 default
r23900:5eb3541f default
Show More
test-revlog-ancestry.py
85 lines | 1.7 KiB | text/x-python | PythonLexer
/ tests / test-revlog-ancestry.py
Stefano Tortarolo
Add ancestors and descendants to revlog...
r6872 import os
from mercurial import hg, ui, merge
u = ui.ui()
repo = hg.repository(u, 'test1', create=1)
os.chdir('test1')
def commit(text, time):
repo.commit(text=text, date="%d 0" % time)
def addcommit(name, time):
Alejandro Santos
compat: use open() instead of file() everywhere
r9031 f = open(name, 'w')
Stefano Tortarolo
Add ancestors and descendants to revlog...
r6872 f.write('%s\n' % name)
f.close()
Dirkjan Ochtman
move working dir/dirstate methods from localrepo to workingctx
r11303 repo[None].add([name])
Stefano Tortarolo
Add ancestors and descendants to revlog...
r6872 commit(name, time)
def update(rev):
merge.update(repo, rev, False, True, False)
def merge_(rev):
merge.update(repo, rev, True, False, False)
if __name__ == '__main__':
addcommit("A", 0)
addcommit("B", 1)
update(0)
addcommit("C", 2)
merge_(1)
commit("D", 3)
update(2)
addcommit("E", 4)
addcommit("F", 5)
update(3)
addcommit("G", 6)
merge_(5)
commit("H", 7)
update(5)
addcommit("I", 8)
# Ancestors
print 'Ancestors of 5'
Bryan O'Sullivan
revlog: ancestors(*revs) becomes ancestors(revs) (API)...
r16866 for r in repo.changelog.ancestors([5]):
Dirkjan Ochtman
strip trailing whitespace, replace tabs by spaces
r6923 print r,
Stefano Tortarolo
Add ancestors and descendants to revlog...
r6872
print '\nAncestors of 6 and 5'
Bryan O'Sullivan
revlog: ancestors(*revs) becomes ancestors(revs) (API)...
r16866 for r in repo.changelog.ancestors([6, 5]):
Dirkjan Ochtman
strip trailing whitespace, replace tabs by spaces
r6923 print r,
Stefano Tortarolo
Add ancestors and descendants to revlog...
r6872
print '\nAncestors of 5 and 4'
Bryan O'Sullivan
revlog: ancestors(*revs) becomes ancestors(revs) (API)...
r16866 for r in repo.changelog.ancestors([5, 4]):
Dirkjan Ochtman
strip trailing whitespace, replace tabs by spaces
r6923 print r,
Stefano Tortarolo
Add ancestors and descendants to revlog...
r6872
Joshua Redstone
revlog: add optional stoprev arg to revlog.ancestors()...
r16868 print '\nAncestors of 7, stop at 6'
for r in repo.changelog.ancestors([7], 6):
print r,
Siddharth Agarwal
revlog.ancestors: add support for including revs...
r18081 print '\nAncestors of 7, including revs'
for r in repo.changelog.ancestors([7], inclusive=True):
print r,
print '\nAncestors of 7, 5 and 3, including revs'
for r in repo.changelog.ancestors([7, 5, 3], inclusive=True):
print r,
Stefano Tortarolo
Add ancestors and descendants to revlog...
r6872 # Descendants
print '\n\nDescendants of 5'
Bryan O'Sullivan
revlog: descendants(*revs) becomes descendants(revs) (API)...
r16867 for r in repo.changelog.descendants([5]):
Dirkjan Ochtman
strip trailing whitespace, replace tabs by spaces
r6923 print r,
Stefano Tortarolo
Add ancestors and descendants to revlog...
r6872
print '\nDescendants of 5 and 3'
Bryan O'Sullivan
revlog: descendants(*revs) becomes descendants(revs) (API)...
r16867 for r in repo.changelog.descendants([5, 3]):
Dirkjan Ochtman
strip trailing whitespace, replace tabs by spaces
r6923 print r,
Stefano Tortarolo
Add ancestors and descendants to revlog...
r6872
print '\nDescendants of 5 and 4'
Bryan O'Sullivan
revlog: descendants(*revs) becomes descendants(revs) (API)...
r16867 for r in repo.changelog.descendants([5, 4]):
Dirkjan Ochtman
strip trailing whitespace, replace tabs by spaces
r6923 print r,
Stefano Tortarolo
Add ancestors and descendants to revlog...
r6872