##// END OF EJS Templates
merge: don't report progress for dr/rd actions...
merge: don't report progress for dr/rd actions It is easier to reason about certain algorithms in terms of a file->action mapping than the current action->list-of-files. Bid merge is already written this way (but with a list of actions per file), and largefiles' overridecalculateupdates() will also benefit. However, that requires us to have at most one action per file. That requirement is currently violated by 'dr' (divergent rename) and 'rd' (rename and delete) actions, which can exist for the same file as some other action. These actions are only used for displaying warnings to the user; they don't change anything in the working copy or the dirstate. In this way, they are similar to the 'k' (keep) action. However, they are even less action-like than 'k' is: 'k' at least describes what to do with the file ("do nothing"), while 'dr' and 'rd' or only annotations for files for which there may exist other, "real" actions. As a first step towards separating these acitons out, stop including them in the progress output, just like we already exclude the 'k' action.

File last commit:

r18081:f88c60e7 default
r23524:a1a7c94d 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