comparison mercurial/commands.py @ 1267:b0633406c07a

Fix diff command so it doesn't walk the dirstate unnecessarily.
author Bryan O'Sullivan <bos@serpentine.com>
date Fri, 16 Sep 2005 14:50:06 -0700
parents 325c07fd2ebd
children 84df9951532a
comparison
equal deleted inserted replaced
1266:703783bc09c4 1267:b0633406c07a
918 if len(revs) > 1: 918 if len(revs) > 1:
919 node2 = revs[1] 919 node2 = revs[1]
920 if len(revs) > 2: 920 if len(revs) > 2:
921 raise util.Abort("too many revisions to diff") 921 raise util.Abort("too many revisions to diff")
922 922
923 files = [] 923 fns, matchfn, anypats = matchpats(repo, repo.getcwd(), pats, opts)
924 match = util.always 924
925 if pats: 925 dodiff(sys.stdout, ui, repo, node1, node2, fns, match=matchfn,
926 roots, match, results = makewalk(repo, pats, opts)
927 for src, abs, rel, exact in results:
928 files.append(abs)
929
930 dodiff(sys.stdout, ui, repo, node1, node2, files, match=match,
931 text=opts['text']) 926 text=opts['text'])
932 927
933 def doexport(ui, repo, changeset, seqno, total, revwidth, opts): 928 def doexport(ui, repo, changeset, seqno, total, revwidth, opts):
934 node = repo.lookup(changeset) 929 node = repo.lookup(changeset)
935 prev, other = repo.changelog.parents(node) 930 prev, other = repo.changelog.parents(node)