547 ui.write("\t%d -> %d\n" % (r.rev(e[4]), i)) |
547 ui.write("\t%d -> %d\n" % (r.rev(e[4]), i)) |
548 if e[5] != hg.nullid: |
548 if e[5] != hg.nullid: |
549 ui.write("\t%d -> %d\n" % (r.rev(e[5]), i)) |
549 ui.write("\t%d -> %d\n" % (r.rev(e[5]), i)) |
550 ui.write("}\n") |
550 ui.write("}\n") |
551 |
551 |
552 def diff(ui, repo, *files, **opts): |
552 def diff(ui, repo, *pats, **opts): |
553 """diff working directory (or selected files)""" |
553 """diff working directory (or selected files)""" |
554 revs = [] |
554 revs = [] |
555 if opts['rev']: |
555 if opts['rev']: |
556 revs = map(lambda x: repo.lookup(x), opts['rev']) |
556 revs = map(lambda x: repo.lookup(x), opts['rev']) |
557 |
557 |
558 if len(revs) > 2: |
558 if len(revs) > 2: |
559 raise Abort("too many revisions to diff") |
559 raise Abort("too many revisions to diff") |
560 |
560 |
561 if files: |
561 files = [] |
562 files = relpath(repo, files) |
562 for src, abs, rel in walk(repo, pats, opts): |
563 else: |
563 files.append(abs) |
564 files = relpath(repo, [""]) |
|
565 |
|
566 dodiff(sys.stdout, ui, repo, files, *revs) |
564 dodiff(sys.stdout, ui, repo, files, *revs) |
567 |
565 |
568 def doexport(ui, repo, changeset, seqno, total, revwidth, opts): |
566 def doexport(ui, repo, changeset, seqno, total, revwidth, opts): |
569 node = repo.lookup(changeset) |
567 node = repo.lookup(changeset) |
570 prev, other = repo.changelog.parents(node) |
568 prev, other = repo.changelog.parents(node) |
1124 "debugstate": (debugstate, [], 'debugstate'), |
1122 "debugstate": (debugstate, [], 'debugstate'), |
1125 "debugindex": (debugindex, [], 'debugindex FILE'), |
1123 "debugindex": (debugindex, [], 'debugindex FILE'), |
1126 "debugindexdot": (debugindexdot, [], 'debugindexdot FILE'), |
1124 "debugindexdot": (debugindexdot, [], 'debugindexdot FILE'), |
1127 "^diff": |
1125 "^diff": |
1128 (diff, |
1126 (diff, |
1129 [('r', 'rev', [], 'revision')], |
1127 [('I', 'include', [], 'include path in search'), |
|
1128 ('X', 'exclude', [], 'exclude path from search'), |
|
1129 ('r', 'rev', [], 'revision')], |
1130 'hg diff [-r REV1 [-r REV2]] [FILE]...'), |
1130 'hg diff [-r REV1 [-r REV2]] [FILE]...'), |
1131 "^export": |
1131 "^export": |
1132 (export, |
1132 (export, |
1133 [('o', 'output', "", 'output to file')], |
1133 [('o', 'output', "", 'output to file')], |
1134 "hg export [-o OUTFILE] REV..."), |
1134 "hg export [-o OUTFILE] REV..."), |